KVM: arm64: GICv4.1: Reload VLPI configuration on distributor enable/disable
[sfrench/cifs-2.6.git] / virt / kvm / arm / arm.c
index eda7b624eab8c46250789267a2118c50affab453..4d864f857ac8f39657c72ef5a84dc46d516baaef 100644 (file)
@@ -625,6 +625,14 @@ static void check_vcpu_requests(struct kvm_vcpu *vcpu)
 
                if (kvm_check_request(KVM_REQ_RECORD_STEAL, vcpu))
                        kvm_update_stolen_time(vcpu);
+
+               if (kvm_check_request(KVM_REQ_RELOAD_GICv4, vcpu)) {
+                       /* The distributor enable bits were changed */
+                       preempt_disable();
+                       vgic_v4_put(vcpu, false);
+                       vgic_v4_load(vcpu);
+                       preempt_enable();
+               }
        }
 }