Messages in this thread |  | | From | Paul Mackerras <> | Date | Sat, 6 Oct 2001 09:28:17 +1000 (EST) | Subject | Re: [PATCH] change name of rep_nop |
| |
Peter Rival writes:
> You also need to move the call to smp_boot_cpus() below the > clear_bit(...) line in smp_init(). Without it, my Wildfire doesn't get
No, that won't work for me, because cpu_online_map is set by smp_boot_cpus(), at least on PPC (in fact each CPU sets its bit in cpu_online_map as it spins up).
There shouldn't be a race on x86 at all, because the secondary processors don't call init_idle until after they see that the primary cpu has call smp_commence. (There is currently a race on PPC since we call init_idle before waiting for smp_commence, but that would not be your problem.)
> past the while(wait_init_idle) loop - seems all of the CPUs have already > done their work before the mask is set. Besides, it's the right place > for it anyway.
No, I think it should be smp_boot_cpus, set wait_init_idle, smp_commence, then the secondaries start clearing their bits. Which AFAICS is the way it is on x86. What architecture is your wildfire?
Paul. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
|  |