x86: apic - unify smp_apic_timer_interrupt
authorCyrill Gorcunov <gorcunov@gmail.com>
Sun, 24 Aug 2008 09:01:45 +0000 (02:01 -0700)
committerIngo Molnar <mingo@elte.hu>
Thu, 16 Oct 2008 14:53:01 +0000 (16:53 +0200)
Signed-off-by: Cyrill Gorcunov <gorcunov@gmail.com>
Signed-off-by: Yinghai Lu <yhlu.kernel@gmail.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/kernel/apic_32.c
arch/x86/kernel/apic_64.c

index 4ca3717b3026586ca57b3db3f931f260702f70b0..913d9924b101ee81873a3df1f5a7ffe4591e7ee7 100644 (file)
@@ -718,6 +718,9 @@ void smp_apic_timer_interrupt(struct pt_regs *regs)
         * Besides, if we don't timer interrupts ignore the global
         * interrupt lock, which is the WrongThing (tm) to do.
         */
+#ifdef CONFIG_X86_64
+       exit_idle();
+#endif
        irq_enter();
        local_apic_timer_interrupt();
        irq_exit();
index 283968d4e0240e9c9b1ef48fd0caf010985f9773..2e109119f64721713e0cc5036e02b80743bf0a31 100644 (file)
@@ -625,7 +625,9 @@ void smp_apic_timer_interrupt(struct pt_regs *regs)
         * Besides, if we don't timer interrupts ignore the global
         * interrupt lock, which is the WrongThing (tm) to do.
         */
+#ifdef CONFIG_X86_64
        exit_idle();
+#endif
        irq_enter();
        local_apic_timer_interrupt();
        irq_exit();