aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSam Ravnborg <sam@ravnborg.org>2008-04-29 03:58:50 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2008-04-29 11:06:00 -0400
commit514a20a5da99aef8e667cc395841a5c4e5f9e8c1 (patch)
treec95ee722fb4cfc58ebb2fcad5ec7971abc3884de
parent9647155ffbce9dffed8a9a4768c8994334b609db (diff)
cpu: fix section mismatch warnings in *cpu_down
Fix following warnings: WARNING: vmlinux.o(.text+0x75c8d): Section mismatch in reference from the function take_cpu_down() to the variable .cpuinit.data:cpu_chain WARNING: vmlinux.o(.text+0x75d2a): Section mismatch in reference from the function _cpu_down() to the variable .cpuinit.data:cpu_chain WARNING: vmlinux.o(.text+0x75d4d): Section mismatch in reference from the function _cpu_down() to the variable .cpuinit.data:cpu_chain WARNING: vmlinux.o(.text+0x75de4): Section mismatch in reference from the function _cpu_down() to the variable .cpuinit.data:cpu_chain WARNING: vmlinux.o(.text+0x75e33): Section mismatch in reference from the function _cpu_down() to the variable .cpuinit.data:cpu_chain cpu_down is only used from code surrounded by HOTPLUG_CPU so any references to __cpuinit is OK. Add a few __ref to tech modpost to ignore the references. This is just papering over the fact that the cpu hotplug code is fragile with respect to use of HOTPLUG_CPU and in many cases rely on __cpuinit to get rid of code when HOTPLUG_CPU is not enabled. For now this is the least invasive change. Signed-off-by: Sam Ravnborg <sam@ravnborg.org> Cc: Gautham R Shenoy <ego@in.ibm.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--kernel/cpu.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/kernel/cpu.c b/kernel/cpu.c
index da31165fd298..306844ed58f7 100644
--- a/kernel/cpu.c
+++ b/kernel/cpu.c
@@ -180,7 +180,7 @@ struct take_cpu_down_param {
180}; 180};
181 181
182/* Take this CPU down. */ 182/* Take this CPU down. */
183static int take_cpu_down(void *_param) 183static int __ref take_cpu_down(void *_param)
184{ 184{
185 struct take_cpu_down_param *param = _param; 185 struct take_cpu_down_param *param = _param;
186 int err; 186 int err;
@@ -199,7 +199,7 @@ static int take_cpu_down(void *_param)
199} 199}
200 200
201/* Requires cpu_add_remove_lock to be held */ 201/* Requires cpu_add_remove_lock to be held */
202static int _cpu_down(unsigned int cpu, int tasks_frozen) 202static int __ref _cpu_down(unsigned int cpu, int tasks_frozen)
203{ 203{
204 int err, nr_calls = 0; 204 int err, nr_calls = 0;
205 struct task_struct *p; 205 struct task_struct *p;
@@ -274,7 +274,7 @@ out_release:
274 return err; 274 return err;
275} 275}
276 276
277int cpu_down(unsigned int cpu) 277int __ref cpu_down(unsigned int cpu)
278{ 278{
279 int err = 0; 279 int err = 0;
280 280