diff options
author | Sam Ravnborg <sam@ravnborg.org> | 2008-04-29 03:58:50 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-29 11:06:00 -0400 |
commit | 514a20a5da99aef8e667cc395841a5c4e5f9e8c1 (patch) | |
tree | c95ee722fb4cfc58ebb2fcad5ec7971abc3884de /kernel | |
parent | 9647155ffbce9dffed8a9a4768c8994334b609db (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>
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/cpu.c | 6 |
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. */ |
183 | static int take_cpu_down(void *_param) | 183 | static 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 */ |
202 | static int _cpu_down(unsigned int cpu, int tasks_frozen) | 202 | static 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 | ||
277 | int cpu_down(unsigned int cpu) | 277 | int __ref cpu_down(unsigned int cpu) |
278 | { | 278 | { |
279 | int err = 0; | 279 | int err = 0; |
280 | 280 | ||