x86, 32-bit: trim memory not covered by wb mtrrs
[deliverable/linux.git] / arch / x86 / kernel / topology.c
index 8caa0b777466218fcb04d4a706ff155588200942..a0d1719bda790cb23dbed9d776327b00d0c1c934 100644 (file)
@@ -31,9 +31,9 @@
 #include <linux/mmzone.h>
 #include <asm/cpu.h>
 
-static struct i386_cpu cpu_devices[NR_CPUS];
+static DEFINE_PER_CPU(struct x86_cpu, cpu_devices);
 
-int arch_register_cpu(int num)
+int __cpuinit arch_register_cpu(int num)
 {
        /*
         * CPU0 cannot be offlined due to several
@@ -46,15 +46,16 @@ int 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);
+void arch_unregister_cpu(int num)
+{
+       return unregister_cpu(&per_cpu(cpu_devices, num).cpu);
 }
 EXPORT_SYMBOL(arch_register_cpu);
 EXPORT_SYMBOL(arch_unregister_cpu);
This page took 0.02481 seconds and 5 git commands to generate.