[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <alpine.LFD.2.00.1003052102580.2014@localhost.localdomain>
Date: Fri, 5 Mar 2010 21:16:53 +0100 (CET)
From: Thomas Gleixner <tglx@...utronix.de>
To: Uwe Kleine-König
<u.kleine-koenig@...gutronix.de>
cc: linux-kernel@...r.kernel.org, Ingo Molnar <mingo@...e.hu>
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@...gutronix.de>
> Cc: Thomas Gleixner <tglx@...utronix.de>
> Cc: Ingo Molnar <mingo@...e.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
Powered by blists - more mailing lists