diff options
author | Heiko Carstens <heiko.carstens@de.ibm.com> | 2007-07-27 06:29:08 -0400 |
---|---|---|
committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2007-07-27 06:29:17 -0400 |
commit | 3bb447fc8bb6523cb1cec7a0277d831a2b0462b7 (patch) | |
tree | e5f11fda2ff91d5670f1c046b53a12b4dbef55aa /arch/s390/kernel/smp.c | |
parent | d941cf5e373c356723fa648b9f0302a11c9b1770 (diff) |
[S390] Convert to smp_call_function_single.
smp_call_function_single now has the same semantics as s390's
smp_call_function_on. Therefore convert to the *single variant
and get rid of some architecture specific code.
Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/kernel/smp.c')
-rw-r--r-- | arch/s390/kernel/smp.c | 16 |
1 files changed, 7 insertions, 9 deletions
diff --git a/arch/s390/kernel/smp.c b/arch/s390/kernel/smp.c index 182c085ae4dd..aff9f853fc30 100644 --- a/arch/s390/kernel/smp.c +++ b/arch/s390/kernel/smp.c | |||
@@ -170,30 +170,28 @@ int smp_call_function(void (*func) (void *info), void *info, int nonatomic, | |||
170 | EXPORT_SYMBOL(smp_call_function); | 170 | EXPORT_SYMBOL(smp_call_function); |
171 | 171 | ||
172 | /* | 172 | /* |
173 | * smp_call_function_on: | 173 | * smp_call_function_single: |
174 | * @cpu: the CPU where func should run | ||
174 | * @func: the function to run; this must be fast and non-blocking | 175 | * @func: the function to run; this must be fast and non-blocking |
175 | * @info: an arbitrary pointer to pass to the function | 176 | * @info: an arbitrary pointer to pass to the function |
176 | * @nonatomic: unused | 177 | * @nonatomic: unused |
177 | * @wait: if true, wait (atomically) until function has completed on other CPUs | 178 | * @wait: if true, wait (atomically) until function has completed on other CPUs |
178 | * @cpu: the CPU where func should run | ||
179 | * | 179 | * |
180 | * Run a function on one processor. | 180 | * Run a function on one processor. |
181 | * | 181 | * |
182 | * You must not call this function with disabled interrupts, from a | 182 | * You must not call this function with disabled interrupts, from a |
183 | * hardware interrupt handler or from a bottom half. | 183 | * hardware interrupt handler or from a bottom half. |
184 | */ | 184 | */ |
185 | int smp_call_function_on(void (*func) (void *info), void *info, int nonatomic, | 185 | int smp_call_function_single(int cpu, void (*func) (void *info), void *info, |
186 | int wait, int cpu) | 186 | int nonatomic, int wait) |
187 | { | 187 | { |
188 | cpumask_t map = CPU_MASK_NONE; | ||
189 | |||
190 | preempt_disable(); | 188 | preempt_disable(); |
191 | cpu_set(cpu, map); | 189 | __smp_call_function_map(func, info, nonatomic, wait, |
192 | __smp_call_function_map(func, info, nonatomic, wait, map); | 190 | cpumask_of_cpu(cpu)); |
193 | preempt_enable(); | 191 | preempt_enable(); |
194 | return 0; | 192 | return 0; |
195 | } | 193 | } |
196 | EXPORT_SYMBOL(smp_call_function_on); | 194 | EXPORT_SYMBOL(smp_call_function_single); |
197 | 195 | ||
198 | static void do_send_stop(void) | 196 | static void do_send_stop(void) |
199 | { | 197 | { |