]> err.no Git - linux-2.6/blobdiff - kernel/softirq.c
x86: fix c_p_a() boot crash
[linux-2.6] / kernel / softirq.c
index 8fe1ff40102daf8362ced9dc964977e80a344ae3..d7837d45419eabbbead3886b104a697b5bcaf29c 100644 (file)
@@ -280,9 +280,14 @@ asmlinkage void do_softirq(void)
  */
 void irq_enter(void)
 {
+#ifdef CONFIG_NO_HZ
+       int cpu = smp_processor_id();
+       if (idle_cpu(cpu) && !in_interrupt())
+               tick_nohz_stop_idle(cpu);
+#endif
        __irq_enter();
 #ifdef CONFIG_NO_HZ
-       if (idle_cpu(smp_processor_id()))
+       if (idle_cpu(cpu))
                tick_nohz_update_jiffies();
 #endif
 }