diff options
author | Adrian Bunk <bunk@kernel.org> | 2008-02-06 04:37:51 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2008-02-06 13:41:08 -0500 |
commit | 6c81c32f9616fd6f2795dceae2f70943cb4d8609 (patch) | |
tree | fcafa4b8b071fc9d3a8ea87fd7a1fefca965a5a4 /arch/x86 | |
parent | eb38a996ebacefe4ce2274de901138505d9cc96b (diff) |
calibrate_delay() must be __cpuinit
calibrate_delay() must be __cpuinit, not __{dev,}init.
I've verified that this is correct for all users.
While doing the latter, I also did the following cleanups:
- remove pointless additional prototypes in C files
- ensure all users #include <linux/delay.h>
This fixes the following section mismatches with CONFIG_HOTPLUG=n,
CONFIG_HOTPLUG_CPU=y:
WARNING: vmlinux.o(.text+0x1128d): Section mismatch: reference to .init.text.1:calibrate_delay (between 'check_cx686_slop' and 'set_cx86_reorder')
WARNING: vmlinux.o(.text+0x25102): Section mismatch: reference to .init.text.1:calibrate_delay (between 'smp_callin' and 'cpu_coregroup_map')
Signed-off-by: Adrian Bunk <bunk@kernel.org>
Cc: Ivan Kokshaysky <ink@jurassic.park.msu.ru>
Cc: Richard Henderson <rth@twiddle.net>
Cc: "Luck, Tony" <tony.luck@intel.com>
Cc: Ralf Baechle <ralf@linux-mips.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: "David S. Miller" <davem@davemloft.net>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: Christian Zankel <chris@zankel.net>
Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/x86')
-rw-r--r-- | arch/x86/kernel/cpu/cyrix.c | 2 | ||||
-rw-r--r-- | arch/x86/kernel/smpboot_32.c | 2 | ||||
-rw-r--r-- | arch/x86/mach-voyager/voyager_smp.c | 2 |
3 files changed, 0 insertions, 6 deletions
diff --git a/arch/x86/kernel/cpu/cyrix.c b/arch/x86/kernel/cpu/cyrix.c index 404a6a2d4016..7139b0262703 100644 --- a/arch/x86/kernel/cpu/cyrix.c +++ b/arch/x86/kernel/cpu/cyrix.c | |||
@@ -83,8 +83,6 @@ static char cyrix_model_mult2[] __cpuinitdata = "12233445"; | |||
83 | * FIXME: our newer udelay uses the tsc. We don't need to frob with SLOP | 83 | * FIXME: our newer udelay uses the tsc. We don't need to frob with SLOP |
84 | */ | 84 | */ |
85 | 85 | ||
86 | extern void calibrate_delay(void) __init; | ||
87 | |||
88 | static void __cpuinit check_cx686_slop(struct cpuinfo_x86 *c) | 86 | static void __cpuinit check_cx686_slop(struct cpuinfo_x86 *c) |
89 | { | 87 | { |
90 | unsigned long flags; | 88 | unsigned long flags; |
diff --git a/arch/x86/kernel/smpboot_32.c b/arch/x86/kernel/smpboot_32.c index 5787a0c3e296..579b9b740c7c 100644 --- a/arch/x86/kernel/smpboot_32.c +++ b/arch/x86/kernel/smpboot_32.c | |||
@@ -202,8 +202,6 @@ valid_k7: | |||
202 | ; | 202 | ; |
203 | } | 203 | } |
204 | 204 | ||
205 | extern void calibrate_delay(void); | ||
206 | |||
207 | static atomic_t init_deasserted; | 205 | static atomic_t init_deasserted; |
208 | 206 | ||
209 | static void __cpuinit smp_callin(void) | 207 | static void __cpuinit smp_callin(void) |
diff --git a/arch/x86/mach-voyager/voyager_smp.c b/arch/x86/mach-voyager/voyager_smp.c index dffa786f61fe..3cc8eb2f36a9 100644 --- a/arch/x86/mach-voyager/voyager_smp.c +++ b/arch/x86/mach-voyager/voyager_smp.c | |||
@@ -444,8 +444,6 @@ static __u32 __init setup_trampoline(void) | |||
444 | static void __init start_secondary(void *unused) | 444 | static void __init start_secondary(void *unused) |
445 | { | 445 | { |
446 | __u8 cpuid = hard_smp_processor_id(); | 446 | __u8 cpuid = hard_smp_processor_id(); |
447 | /* external functions not defined in the headers */ | ||
448 | extern void calibrate_delay(void); | ||
449 | 447 | ||
450 | cpu_init(); | 448 | cpu_init(); |
451 | 449 | ||