Hi, I use the kernel: https://github.com/virtualopensystems/linux-kvm-arm.git branch: kvm-arm-master. About the vgic module, In vgic_dispatch_sgi function, when mode == 0, that is the vcpu of VM should send sgi to the cpu of the target_cpus list. So , there must be a lack of break in switch case 0 branch. Here is the patch : diff --git a/virt/kvm/arm/vgic.c b/virt/kvm/arm/vgic.c index 907345c..176b59c 100644 --- a/virt/kvm/arm/vgic.c +++ b/virt/kvm/arm/vgic.c @@ -915,6 +915,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; _______________________________________________ kvmarm mailing list kvmarm@xxxxxxxxxxxxxxxxxxxxx https://lists.cs.columbia.edu/mailman/listinfo/kvmarm