Messages in this thread | | | Date | Fri, 5 Mar 2010 21:16:53 +0100 (CET) | From | Thomas Gleixner <> | Subject | Re: [PATCH v2] genirq: spurious irq detection for threaded irqs |
| |
On Fri, 5 Mar 2010, Uwe Kleine-König wrote:
> For threaded irqs the top half returns IRQ_WAKE_THREAD. Don't treat > that value like IRQ_HANDLED for the spurious check. Instead check the > return value of the threaded handler to be able to detect stuck irqs > that only have threaded handlers and no top half that can detect the > problem. > > Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> > Cc: Thomas Gleixner <tglx@linutronix.de> > Cc: Ingo Molnar <mingo@elte.hu> > --- > Hello, > > changed since v1: > > - use note_interrupt for the threaded handler's return value, getting rid of > note_threaded_interrupt. The only downside is that a threaded handler > returning IRQ_WAKE_THREAD remains uncatched now.
Well that's easy to fix.
> + if (!noirqdebug) > + note_interrupt(action->irq, desc, action_ret);
note_interrupt(action->irq, desc, action_ret & ~IRQ_WAKE_THREAD); Thanks,
tglx | |