[PATCH] x86-64: Enable interrupts during delay calibration on APs
authorAndi Kleen <ak@suse.de>
Mon, 12 Sep 2005 16:49:24 +0000 (18:49 +0200)
committerLinus Torvalds <torvalds@g5.osdl.org>
Mon, 12 Sep 2005 17:49:55 +0000 (10:49 -0700)
We used to disable them to work around a bug, but that
is not needed anymore. Keeping them enabled avoids the NMI
watchdog triggering in some cases.

Signed-off-by: Andi Kleen <ak@suse.de>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
arch/x86_64/kernel/smpboot.c

index 4efe36f..277ce5e 100644 (file)
@@ -413,8 +413,13 @@ void __cpuinit smp_callin(void)
 
        /*
         * Get our bogomips.
 
        /*
         * Get our bogomips.
+        *
+        * Need to enable IRQs because it can take longer and then
+        * the NMI watchdog might kill us.
         */
         */
+       local_irq_enable();
        calibrate_delay();
        calibrate_delay();
+       local_irq_disable();
        Dprintk("Stack at about %p\n",&cpuid);
 
        disable_APIC_timer();
        Dprintk("Stack at about %p\n",&cpuid);
 
        disable_APIC_timer();