softirq,rcu: Inform RCU of irq_exit() activity
[linux-2.6.git] / kernel / rcutree_plugin.h
index d9d7a89..8aafbb8 100644 (file)
@@ -318,7 +318,7 @@ static noinline void rcu_read_unlock_special(struct task_struct *t)
        }
 
        /* Hardware IRQ handlers cannot block. */
-       if (in_irq()) {
+       if (in_irq() || in_serving_softirq()) {
                local_irq_restore(flags);
                return;
        }