diff options
author | Jan Beulich <jbeulich@suse.com> | 2011-09-18 00:22:57 +0100 |
---|---|---|
committer | Jan Beulich <jbeulich@suse.com> | 2011-09-18 00:22:57 +0100 |
commit | 6ac9f9c55cce7e94445120ee8751a165dfe2d9d3 (patch) | |
tree | 564d7e5fb09327622ca78c5202212c90baca88b5 /xen/common/softirq.c | |
parent | 645bf0d3fb22c91491c73dd16d184e8e986e1251 (diff) | |
download | xen-6ac9f9c55cce7e94445120ee8751a165dfe2d9d3.tar.gz xen-6ac9f9c55cce7e94445120ee8751a165dfe2d9d3.tar.bz2 xen-6ac9f9c55cce7e94445120ee8751a165dfe2d9d3.zip |
convert more literal uses of cpumask_t to pointers
This is particularly relevant as the number of CPUs to be supported
increases (as recently happened for the default thereof).
Signed-off-by: Jan Beulich <jbeulich@suse.com>
Diffstat (limited to 'xen/common/softirq.c')
-rw-r--r-- | xen/common/softirq.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/xen/common/softirq.c b/xen/common/softirq.c index 30559ce7b2..b0e4890c75 100644 --- a/xen/common/softirq.c +++ b/xen/common/softirq.c @@ -68,15 +68,16 @@ void open_softirq(int nr, softirq_handler handler) softirq_handlers[nr] = handler; } -void cpumask_raise_softirq(cpumask_t mask, unsigned int nr) +void cpumask_raise_softirq(const cpumask_t *mask, unsigned int nr) { int cpu; + cpumask_t send_mask = CPU_MASK_NONE; - for_each_cpu_mask(cpu, mask) - if ( test_and_set_bit(nr, &softirq_pending(cpu)) ) - cpu_clear(cpu, mask); + for_each_cpu_mask(cpu, *mask) + if ( !test_and_set_bit(nr, &softirq_pending(cpu)) ) + cpu_set(cpu, send_mask); - smp_send_event_check_mask(&mask); + smp_send_event_check_mask(&send_mask); } void cpu_raise_softirq(unsigned int cpu, unsigned int nr) |