linux/kernel/irq
Guenter Roeck 72ba9d544e genirq/PM: Always unlock IRQ descriptor in rearm_wake_irq()
commit e27b1636e9 upstream.

rearm_wake_irq() does not unlock the irq descriptor if the interrupt
is not suspended or if wakeup is not enabled on it.

Restucture the exit conditions so the unlock is always ensured.

Fixes: 3a79bc63d9 ("PCI: irq: Introduce rearm_wake_irq()")
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20200811180001.80203-1-linux@roeck-us.net
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2020-08-21 13:05:20 +02:00
..
Kconfig treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
Makefile genirq/timings: Add selftest for circular array 2019-06-12 10:47:04 +02:00
affinity.c genirq/affinity: Remove const qualifier from node_to_cpumask argument 2019-08-28 12:20:43 +02:00
autoprobe.c genirq: Delay deactivation in free_irq() 2019-07-03 10:12:28 +02:00
chip.c Merge branch 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2019-07-08 11:22:57 -07:00
cpuhotplug.c genirq: Delay deactivation in free_irq() 2019-07-03 10:12:28 +02:00
debug.h
debugfs.c genirq/debugfs: Add missing sanity checks to interrupt injection 2020-04-17 10:50:11 +02:00
devres.c
dummychip.c
generic-chip.c
handle.c
internals.h genirq/proc: Reject invalid affinity masks (again) 2020-02-28 17:22:26 +01:00
ipi.c
irq_sim.c
irqdesc.c genirq: Properly pair kobject_del() with kobject_add() 2019-08-19 21:41:19 +02:00
irqdomain.c genirq/irqdomain: Check pointer in irq_domain_alloc_irqs_hierarchy() 2020-04-17 10:50:04 +02:00
manage.c genirq/affinity: Make affinity setting if activated opt-in 2020-08-21 13:05:20 +02:00
matrix.c
migration.c
msi.c x86/apic/msi: Plug non-maskable MSI affinity race 2020-02-11 04:35:54 -08:00
pm.c genirq/PM: Always unlock IRQ descriptor in rearm_wake_irq() 2020-08-21 13:05:20 +02:00
proc.c genirq/proc: Reject invalid affinity masks (again) 2020-02-28 17:22:26 +01:00
resend.c genirq: Prevent NULL pointer dereference in resend_irqs() 2019-09-05 21:31:14 +02:00
settings.h
spurious.c
timings.c genirq/timings: Add selftest for next event computation 2019-06-12 10:47:05 +02:00