From: travis@sgi.com Date: Wed, 30 Jan 2008 12:33:11 +0000 (+0100) Subject: x86: change NR_CPUS arrays in topology X-Git-Tag: v2.6.25-rc1~1143^2~295 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=30964d54e94229f567a7312a0e6666f9deb6a488;p=linux-2.6 x86: change NR_CPUS arrays in topology Change the following static arrays sized by NR_CPUS to per_cpu data variables: i386_cpu cpu_devices[NR_CPUS]; (And change the struct name to x86_cpu.) Signed-off-by: Mike Travis Reviewed-by: Christoph Lameter Signed-off-by: Ingo Molnar Signed-off-by: Thomas Gleixner --- diff --git a/arch/x86/kernel/topology.c b/arch/x86/kernel/topology.c index 7e16d675eb..a0d1719bda 100644 --- a/arch/x86/kernel/topology.c +++ b/arch/x86/kernel/topology.c @@ -31,7 +31,7 @@ #include #include -static struct i386_cpu cpu_devices[NR_CPUS]; +static DEFINE_PER_CPU(struct x86_cpu, cpu_devices); int __cpuinit arch_register_cpu(int num) { @@ -46,16 +46,16 @@ int __cpuinit arch_register_cpu(int num) */ #ifdef CONFIG_HOTPLUG_CPU if (num) - cpu_devices[num].cpu.hotpluggable = 1; + per_cpu(cpu_devices, num).cpu.hotpluggable = 1; #endif - return register_cpu(&cpu_devices[num].cpu, num); + return register_cpu(&per_cpu(cpu_devices, num).cpu, num); } #ifdef CONFIG_HOTPLUG_CPU void arch_unregister_cpu(int num) { - return unregister_cpu(&cpu_devices[num].cpu); + return unregister_cpu(&per_cpu(cpu_devices, num).cpu); } EXPORT_SYMBOL(arch_register_cpu); EXPORT_SYMBOL(arch_unregister_cpu); diff --git a/include/asm-x86/cpu.h b/include/asm-x86/cpu.h index b1bc7b1b64..85ece5f10e 100644 --- a/include/asm-x86/cpu.h +++ b/include/asm-x86/cpu.h @@ -7,7 +7,7 @@ #include #include -struct i386_cpu { +struct x86_cpu { struct cpu cpu; }; extern int arch_register_cpu(int num);