From: David S. Miller Date: Sun, 15 Jul 2007 08:29:24 +0000 (-0700) Subject: [SPARC64]: Clear cpu_{core,sibling}_map[] in smp_fill_in_sib_core_maps() X-Git-Tag: v2.6.23-rc1~784^2~4 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=39dd992aee381ff5077536853051fc69e58cc4a9;p=linux-2.6-omap-h63xx.git [SPARC64]: Clear cpu_{core,sibling}_map[] in smp_fill_in_sib_core_maps() When we hot-plug in new cpus, the core_id and proc_id of existing cpus can change. So in order to set the cpu groups correctly we need to clear the maps out completely first. Signed-off-by: David S. Miller --- diff --git a/arch/sparc64/kernel/smp.c b/arch/sparc64/kernel/smp.c index 6956845b03f..e038ae65cb6 100644 --- a/arch/sparc64/kernel/smp.c +++ b/arch/sparc64/kernel/smp.c @@ -1244,6 +1244,7 @@ void __devinit smp_fill_in_sib_core_maps(void) for_each_possible_cpu(i) { unsigned int j; + cpus_clear(cpu_core_map[i]); if (cpu_data(i).core_id == 0) { cpu_set(i, cpu_core_map[i]); continue; @@ -1259,6 +1260,7 @@ void __devinit smp_fill_in_sib_core_maps(void) for_each_possible_cpu(i) { unsigned int j; + cpus_clear(cpu_sibling_map[i]); if (cpu_data(i).proc_id == -1) { cpu_set(i, cpu_sibling_map[i]); continue;