diff options
Diffstat (limited to 'arch/x86/kernel')
-rw-r--r-- | arch/x86/kernel/topology.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/arch/x86/kernel/topology.c b/arch/x86/kernel/topology.c index a0d1719bda79..78cbb655aa79 100644 --- a/arch/x86/kernel/topology.c +++ b/arch/x86/kernel/topology.c | |||
@@ -33,7 +33,8 @@ | |||
33 | 33 | ||
34 | static DEFINE_PER_CPU(struct x86_cpu, cpu_devices); | 34 | static DEFINE_PER_CPU(struct x86_cpu, cpu_devices); |
35 | 35 | ||
36 | int __cpuinit arch_register_cpu(int num) | 36 | #ifdef CONFIG_HOTPLUG_CPU |
37 | int arch_register_cpu(int num) | ||
37 | { | 38 | { |
38 | /* | 39 | /* |
39 | * CPU0 cannot be offlined due to several | 40 | * CPU0 cannot be offlined due to several |
@@ -44,21 +45,23 @@ int __cpuinit arch_register_cpu(int num) | |||
44 | * Also certain PCI quirks require not to enable hotplug control | 45 | * Also certain PCI quirks require not to enable hotplug control |
45 | * for all CPU's. | 46 | * for all CPU's. |
46 | */ | 47 | */ |
47 | #ifdef CONFIG_HOTPLUG_CPU | ||
48 | if (num) | 48 | if (num) |
49 | per_cpu(cpu_devices, num).cpu.hotpluggable = 1; | 49 | per_cpu(cpu_devices, num).cpu.hotpluggable = 1; |
50 | #endif | ||
51 | |||
52 | return register_cpu(&per_cpu(cpu_devices, num).cpu, num); | 50 | return register_cpu(&per_cpu(cpu_devices, num).cpu, num); |
53 | } | 51 | } |
52 | EXPORT_SYMBOL(arch_register_cpu); | ||
54 | 53 | ||
55 | #ifdef CONFIG_HOTPLUG_CPU | ||
56 | void arch_unregister_cpu(int num) | 54 | void arch_unregister_cpu(int num) |
57 | { | 55 | { |
58 | return unregister_cpu(&per_cpu(cpu_devices, num).cpu); | 56 | return unregister_cpu(&per_cpu(cpu_devices, num).cpu); |
59 | } | 57 | } |
60 | EXPORT_SYMBOL(arch_register_cpu); | ||
61 | EXPORT_SYMBOL(arch_unregister_cpu); | 58 | EXPORT_SYMBOL(arch_unregister_cpu); |
59 | #else | ||
60 | int arch_register_cpu(int num) | ||
61 | { | ||
62 | return register_cpu(&per_cpu(cpu_devices, num).cpu, num); | ||
63 | } | ||
64 | EXPORT_SYMBOL(arch_register_cpu); | ||
62 | #endif /*CONFIG_HOTPLUG_CPU*/ | 65 | #endif /*CONFIG_HOTPLUG_CPU*/ |
63 | 66 | ||
64 | static int __init topology_init(void) | 67 | static int __init topology_init(void) |