aboutsummaryrefslogtreecommitdiffstats
path: root/kernel
diff options
context:
space:
mode:
authorRusty Russell <rusty@rustcorp.com.au>2008-12-29 17:35:17 -0500
committerRusty Russell <rusty@rustcorp.com.au>2008-12-29 17:35:17 -0500
commitce47d974f71af26d00832e83a43ac79bec272d99 (patch)
treeeb2434bd6f6afefcfb1ec4b03c0886f371b81067 /kernel
parent54b11e6d57a10aa9d0009efd93873e17bffd5d30 (diff)
cpumask: arch_send_call_function_ipi_mask: core
Impact: new API to reduce stack usage We're weaning the core code off handing cpumask's around on-stack. This introduces arch_send_call_function_ipi_mask(). Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Diffstat (limited to 'kernel')
-rw-r--r--kernel/smp.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/kernel/smp.c b/kernel/smp.c
index 9f0eafed1399..172b18268909 100644
--- a/kernel/smp.c
+++ b/kernel/smp.c
@@ -266,6 +266,12 @@ void __smp_call_function_single(int cpu, struct call_single_data *data)
266 generic_exec_single(cpu, data); 266 generic_exec_single(cpu, data);
267} 267}
268 268
269/* FIXME: Shim for archs using old arch_send_call_function_ipi API. */
270#ifndef arch_send_call_function_ipi_mask
271#define arch_send_call_function_ipi_mask(maskp) \
272 arch_send_call_function_ipi(*(maskp))
273#endif
274
269/** 275/**
270 * smp_call_function_many(): Run a function on a set of other CPUs. 276 * smp_call_function_many(): Run a function on a set of other CPUs.
271 * @mask: The set of cpus to run on (only runs on online subset). 277 * @mask: The set of cpus to run on (only runs on online subset).
@@ -343,7 +349,7 @@ void smp_call_function_many(const struct cpumask *mask,
343 smp_mb(); 349 smp_mb();
344 350
345 /* Send a message to all CPUs in the map */ 351 /* Send a message to all CPUs in the map */
346 arch_send_call_function_ipi(*to_cpumask(data->cpumask_bits)); 352 arch_send_call_function_ipi_mask(to_cpumask(data->cpumask_bits));
347 353
348 /* optionally wait for the CPUs to complete */ 354 /* optionally wait for the CPUs to complete */
349 if (wait) 355 if (wait)