aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSam Ravnborg <sam@ravnborg.org>2008-01-30 07:33:37 -0500
committerIngo Molnar <mingo@elte.hu>2008-01-30 07:33:37 -0500
commit3eaf5efae72b33bc6132e9590e5d4bf11532f8c4 (patch)
tree472b023d4220c0d9d49ee4b346625b15983d1f0c
parent1e296f578a8ef70b314315a2bfc7b036f947803f (diff)
x86: fix section mismatch warning in topology.c
Fix following warning: WARNING: arch/x86/kernel/built-in.o(__ksymtab+0x2b0): Section mismatch: reference to .cpuinit.text:arch_register_cpu in '__ksymtab_arch_register_cpu' Annotating exported symbols are wrong. Previously the warning were hidden by avoiding the export in the non HOTPLUG_CPU case but the improved checks in modpost caught it anyway. Fix it by removing the __cpuinit annotation and rearrange the code a bit to save one ifdef/endif pair. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
-rw-r--r--arch/x86/kernel/topology.c15
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
34static DEFINE_PER_CPU(struct x86_cpu, cpu_devices); 34static DEFINE_PER_CPU(struct x86_cpu, cpu_devices);
35 35
36int __cpuinit arch_register_cpu(int num) 36#ifdef CONFIG_HOTPLUG_CPU
37int 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}
52EXPORT_SYMBOL(arch_register_cpu);
54 53
55#ifdef CONFIG_HOTPLUG_CPU
56void arch_unregister_cpu(int num) 54void 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}
60EXPORT_SYMBOL(arch_register_cpu);
61EXPORT_SYMBOL(arch_unregister_cpu); 58EXPORT_SYMBOL(arch_unregister_cpu);
59#else
60int arch_register_cpu(int num)
61{
62 return register_cpu(&per_cpu(cpu_devices, num).cpu, num);
63}
64EXPORT_SYMBOL(arch_register_cpu);
62#endif /*CONFIG_HOTPLUG_CPU*/ 65#endif /*CONFIG_HOTPLUG_CPU*/
63 66
64static int __init topology_init(void) 67static int __init topology_init(void)