]> git.baikalelectronics.ru Git - kernel.git/commit
genirq: Prevent resend to interrupts marked IRQ_NESTED_THREAD
authorThomas Gleixner <tglx@linutronix.de>
Thu, 16 Jul 2015 12:10:17 +0000 (14:10 +0200)
committerThomas Gleixner <tglx@linutronix.de>
Fri, 17 Jul 2015 09:29:34 +0000 (11:29 +0200)
commit46603e667e9773056060139fa1c0e204b8a7a857
treeaf68b2120f3cba499cf8d26b6cd76cdbb1d302f2
parent156c6288dfc9d3ce195f89e961e0add36bc07cbd
genirq: Prevent resend to interrupts marked IRQ_NESTED_THREAD

The resend mechanism happily calls the interrupt handler of interrupts
which are marked IRQ_NESTED_THREAD from softirq context. This can
result in crashes because the interrupt handler is not the proper way
to invoke the device handlers. They must be invoked via
handle_nested_irq.

Prevent the resend even if the interrupt has no valid parent irq
set. Its better to have a lost interrupt than a crashing machine.

Reported-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Cc: stable@vger.kernel.org
kernel/irq/resend.c