Commit fa8004d8 authored by Glauber de Oliveira Costa's avatar Glauber de Oliveira Costa Committed by Ingo Molnar

x86: add barriers statement

goal is to have i386 and x86_64 closer, so we
add barriers to match
Signed-off-by: default avatarGlauber Costa <gcosta@redhat.com>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent 148a30f8
...@@ -180,6 +180,9 @@ static void __cpuinit start_secondary(void *unused) ...@@ -180,6 +180,9 @@ static void __cpuinit start_secondary(void *unused)
smp_callin(); smp_callin();
while (!cpu_isset(smp_processor_id(), smp_commenced_mask)) while (!cpu_isset(smp_processor_id(), smp_commenced_mask))
cpu_relax(); cpu_relax();
/* otherwise gcc will move up smp_processor_id before the cpu_init */
barrier();
/* /*
* Check TSC synchronization with the BP: * Check TSC synchronization with the BP:
*/ */
...@@ -432,6 +435,7 @@ wakeup_secondary_cpu(int phys_apicid, unsigned long start_eip) ...@@ -432,6 +435,7 @@ wakeup_secondary_cpu(int phys_apicid, unsigned long start_eip)
Dprintk("Waiting for send to finish...\n"); Dprintk("Waiting for send to finish...\n");
send_status = safe_apic_wait_icr_idle(); send_status = safe_apic_wait_icr_idle();
mb();
atomic_set(&init_deasserted, 1); atomic_set(&init_deasserted, 1);
/* /*
......
...@@ -239,6 +239,7 @@ void __cpuinit start_secondary(void) ...@@ -239,6 +239,7 @@ void __cpuinit start_secondary(void)
setup_secondary_clock(); setup_secondary_clock();
wmb();
cpu_idle(); cpu_idle();
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment