Messages in this thread | | | Subject | Re: [PATCH] x86_64: not set boot cpu in cpu_online_map at smp_prepare_boot_cpu | From | Zachary Amsden <> | Date | Mon, 26 Nov 2007 12:57:46 -0800 |
| |
On Mon, 2007-11-26 at 00:38 -0800, Yinghai Lu wrote: > [PATCH] x86_64: not set boot cpu in cpu_online_map at smp_prepare_boot_cpu > > in init/main.c boot_cpu_init() does that before > > Signed-off-by: Yinghai Lu <yinghai.lu@sun.com> > > diff --git a/arch/x86/kernel/smpboot_64.c b/arch/x86/kernel/smpboot_64.c > index 500670c..966d124 100644 > --- a/arch/x86/kernel/smpboot_64.c > +++ b/arch/x86/kernel/smpboot_64.c > @@ -912,7 +912,7 @@ void __init smp_prepare_cpus(unsigned int max_cpus) > void __init smp_prepare_boot_cpu(void) > { > int me = smp_processor_id(); > - cpu_set(me, cpu_online_map); > + /* already set me in cpu_online_map in boot_cpu_init() */ > cpu_set(me, cpu_callout_map); > per_cpu(cpu_state, me) = CPU_ONLINE; > }
This ordering can be tricky wrt CPU hotplug. Are you sure you are not breaking CPU hotplug? AFAIK, x86_64 has that right and the 32-bit code had it wrong.
Zach
- 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/
| |