diff options
author | Mikael Pettersson <mikpe@it.uu.se> | 2006-07-05 20:42:58 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2006-07-05 20:42:58 -0700 |
commit | 37e64e5ae1a9554762b6ec494871adcf48be20cf (patch) | |
tree | bb01a8691e180991e4f0469f171ef0c79a889710 /arch | |
parent | 7233589d77fdb593b482a8b7ee867e901f54b593 (diff) | |
download | lwn-37e64e5ae1a9554762b6ec494871adcf48be20cf.tar.gz lwn-37e64e5ae1a9554762b6ec494871adcf48be20cf.zip |
[SPARC64]: Fix stack overflow checking in modular non-SMP kernels.
The sparc64 kernel's EXPORT_SYMBOL(_mcount) is inside an
#ifdef CONFIG_SMP. This breaks modules in non-SMP kernels
built with stack overflow checking (CONFIG_STACK_DEBUG=y),
as modules_install reports:
WARNING: /lib/modules/2.6.17/kernel/drivers/ide/ide-cd.ko needs unknown symbol _mcount
Trivially fixed by moving EXPORT_SYMBOL(_mcount) outside of
the #ifdef CONFIG_SMP.
Signed-off-by: Mikael Pettersson <mikpe@it.uu.se>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/sparc64/kernel/sparc64_ksyms.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/arch/sparc64/kernel/sparc64_ksyms.c b/arch/sparc64/kernel/sparc64_ksyms.c index 4173de425f09..237524d87cab 100644 --- a/arch/sparc64/kernel/sparc64_ksyms.c +++ b/arch/sparc64/kernel/sparc64_ksyms.c @@ -124,11 +124,6 @@ EXPORT_SYMBOL(__write_lock); EXPORT_SYMBOL(__write_unlock); EXPORT_SYMBOL(__write_trylock); -#if defined(CONFIG_MCOUNT) -extern void _mcount(void); -EXPORT_SYMBOL(_mcount); -#endif - /* CPU online map and active count. */ EXPORT_SYMBOL(cpu_online_map); EXPORT_SYMBOL(phys_cpu_present_map); @@ -136,6 +131,11 @@ EXPORT_SYMBOL(phys_cpu_present_map); EXPORT_SYMBOL(smp_call_function); #endif /* CONFIG_SMP */ +#if defined(CONFIG_MCOUNT) +extern void _mcount(void); +EXPORT_SYMBOL(_mcount); +#endif + EXPORT_SYMBOL(sparc64_get_clock_tick); /* semaphores */ |