diff options
author | Rusty Russell <rusty@rustcorp.com.au> | 2009-09-24 11:34:44 -0400 |
---|---|---|
committer | Rusty Russell <rusty@rustcorp.com.au> | 2009-09-23 20:04:45 -0400 |
commit | 48a048fed82a8e5fdd8618574f6d3de1a0d67a50 (patch) | |
tree | 0d1af3d63494feb3f21bc9e288c748fdd3b9601e /arch/mips/kernel | |
parent | c2a3a4881dc851ec9b5bdc83fdc03afa31d6fbed (diff) |
cpumask: arch_send_call_function_ipi_mask: mips
We're weaning the core code off handing cpumask's around on-stack.
This introduces arch_send_call_function_ipi_mask(), and by defining
it, the old arch_send_call_function_ipi is defined by the core code.
We also take the chance to wean the implementations off the
obsolescent for_each_cpu_mask(): making send_ipi_mask take the pointer
seemed the most natural way to ensure all implementations used
for_each_cpu.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Diffstat (limited to 'arch/mips/kernel')
-rw-r--r-- | arch/mips/kernel/smp-cmp.c | 4 | ||||
-rw-r--r-- | arch/mips/kernel/smp-mt.c | 4 | ||||
-rw-r--r-- | arch/mips/kernel/smp-up.c | 3 | ||||
-rw-r--r-- | arch/mips/kernel/smp.c | 2 |
4 files changed, 7 insertions, 6 deletions
diff --git a/arch/mips/kernel/smp-cmp.c b/arch/mips/kernel/smp-cmp.c index ad0ff5dc4d59..e5cf5b88fc28 100644 --- a/arch/mips/kernel/smp-cmp.c +++ b/arch/mips/kernel/smp-cmp.c | |||
@@ -80,11 +80,11 @@ void cmp_send_ipi_single(int cpu, unsigned int action) | |||
80 | local_irq_restore(flags); | 80 | local_irq_restore(flags); |
81 | } | 81 | } |
82 | 82 | ||
83 | static void cmp_send_ipi_mask(cpumask_t mask, unsigned int action) | 83 | static void cmp_send_ipi_mask(const struct cpumask *mask, unsigned int action) |
84 | { | 84 | { |
85 | unsigned int i; | 85 | unsigned int i; |
86 | 86 | ||
87 | for_each_cpu_mask(i, mask) | 87 | for_each_cpu(i, mask) |
88 | cmp_send_ipi_single(i, action); | 88 | cmp_send_ipi_single(i, action); |
89 | } | 89 | } |
90 | 90 | ||
diff --git a/arch/mips/kernel/smp-mt.c b/arch/mips/kernel/smp-mt.c index 6f7ee5ac46ee..9538ca42e008 100644 --- a/arch/mips/kernel/smp-mt.c +++ b/arch/mips/kernel/smp-mt.c | |||
@@ -141,11 +141,11 @@ static void vsmp_send_ipi_single(int cpu, unsigned int action) | |||
141 | local_irq_restore(flags); | 141 | local_irq_restore(flags); |
142 | } | 142 | } |
143 | 143 | ||
144 | static void vsmp_send_ipi_mask(cpumask_t mask, unsigned int action) | 144 | static void vsmp_send_ipi_mask(const struct cpumask *mask, unsigned int action) |
145 | { | 145 | { |
146 | unsigned int i; | 146 | unsigned int i; |
147 | 147 | ||
148 | for_each_cpu_mask(i, mask) | 148 | for_each_cpu(i, mask) |
149 | vsmp_send_ipi_single(i, action); | 149 | vsmp_send_ipi_single(i, action); |
150 | } | 150 | } |
151 | 151 | ||
diff --git a/arch/mips/kernel/smp-up.c b/arch/mips/kernel/smp-up.c index 2508d55d68fd..00500fea2750 100644 --- a/arch/mips/kernel/smp-up.c +++ b/arch/mips/kernel/smp-up.c | |||
@@ -18,7 +18,8 @@ static void up_send_ipi_single(int cpu, unsigned int action) | |||
18 | panic(KERN_ERR "%s called", __func__); | 18 | panic(KERN_ERR "%s called", __func__); |
19 | } | 19 | } |
20 | 20 | ||
21 | static inline void up_send_ipi_mask(cpumask_t mask, unsigned int action) | 21 | static inline void up_send_ipi_mask(const struct cpumask *mask, |
22 | unsigned int action) | ||
22 | { | 23 | { |
23 | panic(KERN_ERR "%s called", __func__); | 24 | panic(KERN_ERR "%s called", __func__); |
24 | } | 25 | } |
diff --git a/arch/mips/kernel/smp.c b/arch/mips/kernel/smp.c index 64668a93248b..df2ace9558b9 100644 --- a/arch/mips/kernel/smp.c +++ b/arch/mips/kernel/smp.c | |||
@@ -128,7 +128,7 @@ asmlinkage __cpuinit void start_secondary(void) | |||
128 | cpu_idle(); | 128 | cpu_idle(); |
129 | } | 129 | } |
130 | 130 | ||
131 | void arch_send_call_function_ipi(cpumask_t mask) | 131 | void arch_send_call_function_ipi_mask(const struct cpumask *mask) |
132 | { | 132 | { |
133 | mp_ops->send_ipi_mask(mask, SMP_CALL_FUNCTION); | 133 | mp_ops->send_ipi_mask(mask, SMP_CALL_FUNCTION); |
134 | } | 134 | } |