Skip to content

Commit

Permalink
x86: fix section mismatch warning in topology.c
Browse files Browse the repository at this point in the history
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>
  • Loading branch information
Sam Ravnborg authored and Ingo Molnar committed Jan 30, 2008
1 parent 1e296f5 commit 3eaf5ef
Showing 1 changed file with 9 additions and 6 deletions.
15 changes: 9 additions & 6 deletions arch/x86/kernel/topology.c
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,8 @@

static DEFINE_PER_CPU(struct x86_cpu, cpu_devices);

int __cpuinit arch_register_cpu(int num)
#ifdef CONFIG_HOTPLUG_CPU
int arch_register_cpu(int num)
{
/*
* CPU0 cannot be offlined due to several
Expand All @@ -44,21 +45,23 @@ int __cpuinit arch_register_cpu(int num)
* Also certain PCI quirks require not to enable hotplug control
* for all CPU's.
*/
#ifdef CONFIG_HOTPLUG_CPU
if (num)
per_cpu(cpu_devices, num).cpu.hotpluggable = 1;
#endif

return register_cpu(&per_cpu(cpu_devices, num).cpu, num);
}
EXPORT_SYMBOL(arch_register_cpu);

#ifdef CONFIG_HOTPLUG_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);
#else
int arch_register_cpu(int num)
{
return register_cpu(&per_cpu(cpu_devices, num).cpu, num);
}
EXPORT_SYMBOL(arch_register_cpu);
#endif /*CONFIG_HOTPLUG_CPU*/

static int __init topology_init(void)
Expand Down

0 comments on commit 3eaf5ef

Please sign in to comment.