* [PATCH 0/9] Fix unsafe disable_irq usage
@ 2009-04-16 5:54 Ben Nizette
2009-04-18 23:38 ` Dmitry Torokhov
0 siblings, 1 reply; 2+ messages in thread
From: Ben Nizette @ 2009-04-16 5:54 UTC (permalink / raw)
To: linux-kernel
Cc: dan.j.williams, Eric Miao, linux, dmitry.torokhov, p_gortmaker,
David Brownell, sameo, linux-omap, pierre, linux-input
After being bitten by unsafe usage of disable_irq from within that irq's
handler [1], I went through and used Coccinelle to audit the rest of
drivers/ too. This turned up 9 more unsafe usages.
As Haavard pointed out in that thread, disable_irq waits for running
handlers of an irq to complete before returning. When a handler
disable_irq's its own irq then we see a deadlock.
Note that this wasn't actually observed in the wild until the recent
merge of
commit 3aa551c9b4c40018f0e261a178e3d25478dc04a9
Author: Thomas Gleixner <tglx@linutronix.de>
Date: Mon Mar 23 18:28:15 2009 +0100
genirq: add threaded interrupt handler support
Add support for threaded interrupt handlers
Regards,
--Ben.
[1] http://lkml.org/lkml/2009/4/15/498
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [PATCH 0/9] Fix unsafe disable_irq usage
2009-04-16 5:54 [PATCH 0/9] Fix unsafe disable_irq usage Ben Nizette
@ 2009-04-18 23:38 ` Dmitry Torokhov
0 siblings, 0 replies; 2+ messages in thread
From: Dmitry Torokhov @ 2009-04-18 23:38 UTC (permalink / raw)
To: Ben Nizette
Cc: linux-kernel, dan.j.williams, Eric Miao, linux, p_gortmaker,
David Brownell, sameo, linux-omap, pierre, linux-input
Hi Ben,
On Wednesday 15 April 2009 22:54:05 Ben Nizette wrote:
> After being bitten by unsafe usage of disable_irq from within that irq's
> handler [1], I went through and used Coccinelle to audit the rest of
> drivers/ too. This turned up 9 more unsafe usages.
>
> As Haavard pointed out in that thread, disable_irq waits for running
> handlers of an irq to complete before returning. When a handler
> disable_irq's its own irq then we see a deadlock.
>
> Note that this wasn't actually observed in the wild until the recent
> merge of
>
> commit 3aa551c9b4c40018f0e261a178e3d25478dc04a9
> Author: Thomas Gleixner <tglx@linutronix.de>
> Date: Mon Mar 23 18:28:15 2009 +0100
>
> genirq: add threaded interrupt handler support
>
> Add support for threaded interrupt handlers
>
>
Applied all 4 patches affecting input devices, they should show up next
time Linus pulls from me. Thank you.
--
Dmitry
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2009-04-18 23:38 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-04-16 5:54 [PATCH 0/9] Fix unsafe disable_irq usage Ben Nizette
2009-04-18 23:38 ` Dmitry Torokhov
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).