aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIngo Molnar <mingo@elte.hu>2006-03-26 04:36:54 -0500
committerLinus Torvalds <torvalds@g5.osdl.org>2006-03-26 11:56:53 -0500
commitcd7b24bb1891a10ee25168a912ff2304a9571d23 (patch)
treec8cc6bf9b7c2d3b527f9c5bb8e7ae2b422ee3ac7
parent6dc659d813fdd1789e605d69d0b8762d284e8c60 (diff)
[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>
-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)
271 struct irqaction **p; 271 struct irqaction **p;
272 unsigned long flags; 272 unsigned long flags;
273 273
274 WARN_ON(in_interrupt());
274 if (irq >= NR_IRQS) 275 if (irq >= NR_IRQS)
275 return; 276 return;
276 277