diff --git a/arch/x86/kernel/smpboot_32.c b/arch/x86/kernel/smpboot_32.c index 6c16165abf11f895485e8eb7722897290d823a69..4e5416eb42b09877a0799765e22ce28daf4c1fa0 100644 --- a/arch/x86/kernel/smpboot_32.c +++ b/arch/x86/kernel/smpboot_32.c @@ -185,7 +185,6 @@ static void __cpuinit start_secondary(void *unused) */ check_tsc_sync_target(); - setup_secondary_clock(); if (nmi_watchdog == NMI_IO_APIC) { disable_8259A_irq(0); enable_NMI_through_LVT0(); @@ -214,6 +213,8 @@ static void __cpuinit start_secondary(void *unused) unlock_ipi_call_lock(); per_cpu(cpu_state, smp_processor_id()) = CPU_ONLINE; + setup_secondary_clock(); + wmb(); cpu_idle(); }