aboutsummaryrefslogtreecommitdiffstats
path: root/xen/common/softirq.c
diff options
context:
space:
mode:
authorKeir Fraser <keir.fraser@citrix.com>2010-05-14 18:25:55 +0100
committerKeir Fraser <keir.fraser@citrix.com>2010-05-14 18:25:55 +0100
commit06111bb25b5ca1c3c18f3af9fcc13bb4e0e10174 (patch)
treefe4ff1f71c6f6364e6d996a0621fdb70f0d5c3fd /xen/common/softirq.c
parentc1bc99b8a753b87e0febcf7cddba1d738f9be7fa (diff)
downloadxen-06111bb25b5ca1c3c18f3af9fcc13bb4e0e10174.tar.gz
xen-06111bb25b5ca1c3c18f3af9fcc13bb4e0e10174.tar.bz2
xen-06111bb25b5ca1c3c18f3af9fcc13bb4e0e10174.zip
Some cleanups to cpu offline handling.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
Diffstat (limited to 'xen/common/softirq.c')
-rw-r--r--xen/common/softirq.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/xen/common/softirq.c b/xen/common/softirq.c
index fac59818ac..0a4f1e7914 100644
--- a/xen/common/softirq.c
+++ b/xen/common/softirq.c
@@ -38,7 +38,8 @@ static void __do_softirq(unsigned long ignore_mask)
if ( rcu_pending(cpu) )
rcu_check_callbacks(cpu);
- if ( (pending = (softirq_pending(cpu) & ~ignore_mask)) == 0 )
+ if ( ((pending = (softirq_pending(cpu) & ~ignore_mask)) == 0)
+ || cpu_is_offline(cpu) )
break;
i = find_first_set_bit(pending);