summaryrefslogtreecommitdiff
path: root/virt
diff options
context:
space:
mode:
authorHaibin Wang <wanghaibin.wang@huawei.com>2014-04-10 13:14:32 +0100
committerJiri Slaby <jslaby@suse.cz>2014-05-15 09:55:49 +0200
commitdfcb8cde86ee85d38caaa3140e1b66cf99ca1df8 (patch)
treec6b86587a9420132fe8ea61be4e3103bcee61243 /virt
parent3d43edf5868f260dbfd1353bf243a78f030a08b0 (diff)
KVM: ARM: vgic: Fix sgi dispatch problem
commit 91021a6c8ffdc55804dab5acdfc7de4f278b9ac3 upstream. When dispatch SGI(mode == 0), that is the vcpu of VM should send sgi to the cpu which the target_cpus list. So, there must add the "break" to branch of case 0. Signed-off-by: Haibin Wang <wanghaibin.wang@huawei.com> Acked-by: Marc Zyngier <marc.zyngier@arm.com> Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org> Signed-off-by: Jiri Slaby <jslaby@suse.cz>
Diffstat (limited to 'virt')
-rw-r--r--virt/kvm/arm/vgic.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/virt/kvm/arm/vgic.c b/virt/kvm/arm/vgic.c
index 685fc72fc751..b001dbff0f38 100644
--- a/virt/kvm/arm/vgic.c
+++ b/virt/kvm/arm/vgic.c
@@ -751,6 +751,7 @@ static void vgic_dispatch_sgi(struct kvm_vcpu *vcpu, u32 reg)
case 0:
if (!target_cpus)
return;
+ break;
case 1:
target_cpus = ((1 << nrcpus) - 1) & ~(1 << vcpu_id) & 0xff;