KVM: arm64: Keep mdcr_el2's value as set by __init_el2_debug
authorFuad Tabba <tabba@google.com>
Tue, 17 Aug 2021 08:11:26 +0000 (09:11 +0100)
committerMarc Zyngier <maz@kernel.org>
Fri, 20 Aug 2021 10:12:17 +0000 (11:12 +0100)
__init_el2_debug configures mdcr_el2 at initialization based on,
among other things, available hardware support. Trap deactivation
doesn't check that, so keep the initial value.

No functional change intended.

Signed-off-by: Fuad Tabba <tabba@google.com>
Acked-by: Will Deacon <will@kernel.org>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20210817081134.2918285-8-tabba@google.com
arch/arm64/kvm/hyp/nvhe/switch.c
arch/arm64/kvm/hyp/vhe/switch.c

index 2ea764a..1778593 100644 (file)
@@ -90,10 +90,6 @@ static void __deactivate_traps(struct kvm_vcpu *vcpu)
                isb();
        }
 
-       vcpu->arch.mdcr_el2_host &= MDCR_EL2_HPMN_MASK |
-                                   MDCR_EL2_E2PB_MASK << MDCR_EL2_E2PB_SHIFT |
-                                   MDCR_EL2_E2TB_MASK << MDCR_EL2_E2TB_SHIFT;
-
        __deactivate_traps_common(vcpu);
 
        write_sysreg(this_cpu_ptr(&kvm_init_params)->hcr_el2, hcr_el2);
index ec158fa..0d0c955 100644 (file)
@@ -93,10 +93,6 @@ void activate_traps_vhe_load(struct kvm_vcpu *vcpu)
 
 void deactivate_traps_vhe_put(struct kvm_vcpu *vcpu)
 {
-       vcpu->arch.mdcr_el2_host &= MDCR_EL2_HPMN_MASK |
-                                   MDCR_EL2_E2PB_MASK << MDCR_EL2_E2PB_SHIFT |
-                                   MDCR_EL2_TPMS;
-
        __deactivate_traps_common(vcpu);
 }