From: Haibin Wang Date: Thu, 10 Apr 2014 12:14:32 +0000 (+0100) Subject: KVM: ARM: vgic: Fix sgi dispatch problem X-Git-Tag: v3.12.20~54 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=dfcb8cde86ee85d38caaa3140e1b66cf99ca1df8;p=thirdparty%2Fkernel%2Fstable.git 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 Acked-by: Marc Zyngier Signed-off-by: Christoffer Dall Signed-off-by: Jiri Slaby --- diff --git a/virt/kvm/arm/vgic.c b/virt/kvm/arm/vgic.c index 685fc72fc751f..b001dbff0f38f 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;