[2.6 patch] arch/i386/kernel/smpboot.c:setup_trampoline() must be __cpuinit

Adrian Bunk
2007-07-10T00:05:30Z

This patch fixes the following section mismatch reported by
Frank van Maarseveen:

<-- snip -->

...
MODPOST vmlinux
WARNING: arch/i386/kernel/built-in.o(.text+0xf201): Section mismatch: reference to .init.data:trampoline_end (between 'setup_trampoline' and 'cpu_coregroup_map')
WARNING: arch/i386/kernel/built-in.o(.text+0xf207): Section mismatch: reference to .init.data:trampoline_data (between 'setup_trampoline' and 'cpu_coregroup_map')
WARNING: arch/i386/kernel/built-in.o(.text+0xf21a): Section mismatch: reference to .init.data:trampoline_data (between 'setup_trampoline' and 'cpu_coregroup_map')
...

<-- snip -->

Signed-off-by: Adrian Bunk <bunk@stusta.de>

---

@stable:
Harmless but annoying warnings present when building an i386 SMP kernel
with CONFIG_HOTPLUG_CPU=n and gcc < 4.0 .

--- linux-2.6.22-rc6-mm1/arch/i386/kernel/smpboot.c.old 2007-07-10 01:26:07.000000000 +0200
+++ linux-2.6.22-rc6-mm1/arch/i386/kernel/smpboot.c 2007-07-10 01:26:18.000000000 +0200
@@ -117,7 +117,7 @@
* has made sure it's suitably aligned.
*/

-static unsigned long __devinit setup_trampoline(void)
+static unsigned long __cpuinit setup_trampoline(void)
{
memcpy(trampoline_base, trampoline_data, trampoline_end - trampoline_data);
return virt_to_phys(trampoline_base);