diff options
Diffstat (limited to 'arch/sparc64/kernel/smp.c')
-rw-r--r-- | arch/sparc64/kernel/smp.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/sparc64/kernel/smp.c b/arch/sparc64/kernel/smp.c index 8087d67a0cf8..24fdf1d0adc5 100644 --- a/arch/sparc64/kernel/smp.c +++ b/arch/sparc64/kernel/smp.c | |||
@@ -561,6 +561,9 @@ static void hypervisor_xcall_deliver(u64 data0, u64 data1, u64 data2, cpumask_t | |||
561 | unsigned long flags, status; | 561 | unsigned long flags, status; |
562 | int cnt, retries, this_cpu, prev_sent, i; | 562 | int cnt, retries, this_cpu, prev_sent, i; |
563 | 563 | ||
564 | if (cpus_empty(mask)) | ||
565 | return; | ||
566 | |||
564 | /* We have to do this whole thing with interrupts fully disabled. | 567 | /* We have to do this whole thing with interrupts fully disabled. |
565 | * Otherwise if we send an xcall from interrupt context it will | 568 | * Otherwise if we send an xcall from interrupt context it will |
566 | * corrupt both our mondo block and cpu list state. | 569 | * corrupt both our mondo block and cpu list state. |