KVM: arm/arm64: vgic: Don't check vgic_initialized in sync/flush
authorChristoffer Dall <cdall@linaro.org>
Sat, 18 Mar 2017 12:41:54 +0000 (13:41 +0100)
committerChristoffer Dall <cdall@linaro.org>
Sun, 9 Apr 2017 14:49:11 +0000 (07:49 -0700)
Now when we do an early init of the static parts of the VGIC data
structures, we can do things like checking if the AP lists are empty
directly without having to explicitly check if the vgic is initialized
and reduce a bit of work in our critical path.

Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <cdall@linaro.org>
virt/kvm/arm/vgic/vgic.c

index b64b143e59f99c1b60402b0ecb294e35f6e9537f..04a405ad562280b426c88073ada94237772f1ac8 100644 (file)
@@ -633,9 +633,6 @@ void kvm_vgic_sync_hwstate(struct kvm_vcpu *vcpu)
 {
        struct vgic_cpu *vgic_cpu = &vcpu->arch.vgic_cpu;
 
-       if (unlikely(!vgic_initialized(vcpu->kvm)))
-               return;
-
        vgic_fold_lr_state(vcpu);
        vgic_prune_ap_list(vcpu);
 
@@ -646,9 +643,6 @@ void kvm_vgic_sync_hwstate(struct kvm_vcpu *vcpu)
 /* Flush our emulation state into the GIC hardware before entering the guest. */
 void kvm_vgic_flush_hwstate(struct kvm_vcpu *vcpu)
 {
-       if (unlikely(!vgic_initialized(vcpu->kvm)))
-               return;
-
        /*
         * If there are no virtual interrupts active or pending for this
         * VCPU, then there is no work to do and we can bail out without