[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [XenPPC] [PATCH] Fix race in timebase sync logic
The SMP timebase sync code that recently went in has a race in which secondary processor X+1 can potentially take the timebase offset that is still in flight for secondary processor X. The cause of this was marking a secondary processor online from the boot cpu and then trying to wait for the secondary processor to mark itself online. Signed-off-by: Amos Waterland <apw@xxxxxxxxxx> --- setup.c | 1 - 1 file changed, 1 deletion(-) diff -r 715014b95488 xen/arch/powerpc/setup.c --- a/xen/arch/powerpc/setup.c Thu Sep 07 22:09:06 2006 -0400 +++ b/xen/arch/powerpc/setup.c Fri Sep 08 11:26:27 2006 -0400 @@ -244,9 +244,8 @@ static int kick_secondary_cpus(int maxcp if (cpuid >= maxcpus) break; init_parea(cpuid); - cpu_set(cpuid, cpu_online_map); smp_generic_give_timebase(); /* wait for it */ while (!cpu_online(cpuid)) cpu_relax(); _______________________________________________ Xen-ppc-devel mailing list Xen-ppc-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-ppc-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |