diff options
author | Thomas Gleixner <tglx@linutronix.de> | 2011-02-07 09:05:05 +0100 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2011-02-19 12:58:08 +0100 |
commit | 1082687e8d6292a61759eb83358e7db39fed1bf4 (patch) | |
tree | 2a6ba19073820f116050b1730f3e08f97187ddb2 /kernel/irq/handle.c | |
parent | 2b879eaf095878430c38cbd95e5c0fc4ce65ad8e (diff) | |
download | linux-1082687e8d6292a61759eb83358e7db39fed1bf4.tar.gz linux-1082687e8d6292a61759eb83358e7db39fed1bf4.tar.bz2 linux-1082687e8d6292a61759eb83358e7db39fed1bf4.zip |
genirq: Plug race in report_bad_irq()
We cannot walk the action chain unlocked. Even if IRQ_INPROGRESS is
set an action can be removed and we follow a null pointer. It's safe
to take the lock there, because the code which removes the action will
call synchronize_irq() which waits unlocked for IRQ_INPROGRESS going
away.
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'kernel/irq/handle.c')
0 files changed, 0 insertions, 0 deletions