summaryrefslogtreecommitdiff
path: root/kernel
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2006-03-26 01:36:54 -0800
committerLinus Torvalds <torvalds@g5.osdl.org>2006-03-26 08:56:53 -0800
commitcd7b24bb1891a10ee25168a912ff2304a9571d23 (patch)
treec8cc6bf9b7c2d3b527f9c5bb8e7ae2b422ee3ac7 /kernel
parent6dc659d813fdd1789e605d69d0b8762d284e8c60 (diff)
downloadlinux-sh-cd7b24bb1891a10ee25168a912ff2304a9571d23.tar.gz
[PATCH] warn if free_irq() is called from IRQ context
Warn if free_irq() is called in IRQ context - free_irq() can execute /proc VFS work, which must not be done in IRQ context. Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/irq/manage.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
index 6edfcef291e8..ac766ad573e8 100644
--- a/kernel/irq/manage.c
+++ b/kernel/irq/manage.c
@@ -271,6 +271,7 @@ void free_irq(unsigned int irq, void *dev_id)
struct irqaction **p;
unsigned long flags;
+ WARN_ON(in_interrupt());
if (irq >= NR_IRQS)
return;