free_irq(): fix DEBUG_SHIRQ handling
authorAndrew Morton <akpm@linux-foundation.org>
Wed, 22 Aug 2007 21:01:20 +0000 (14:01 -0700)
committerLinus Torvalds <torvalds@woody.linux-foundation.org>
Thu, 23 Aug 2007 02:52:44 +0000 (19:52 -0700)
commit8b7f07155f8ee1536da2f9590f1aa9383afefb6b
treed4f0fcf4a96734c33ed9e0470fcb28be523070a0
parent436bbd431d41e0fd3bfedb0312ab764b291ddf82
free_irq(): fix DEBUG_SHIRQ handling

If we're going to run the handler from free_irq() then we must do it with
local irq's disabled.  Otherwise lockdep complains that the handler is taking
irq-safe spinlocks in a non-irq-safe fashion.

Cc: Ingo Molnar <mingo@elte.hu>
Cc: David Woodhouse <dwmw2@infradead.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
kernel/irq/manage.c