From 7c4000b1ea6346cb45b8d476978baf52307cb112 Mon Sep 17 00:00:00 2001 From: Fuad Tabba Date: Tue, 12 Oct 2021 15:18:45 +0100 Subject: [PATCH] ANDROID: KVM: arm64: FAR_EL2 mask as a define Create a macro definition for the FAR_EL2 mask and use it instead of a hard-coded value, and put it in a share header to be used by hyp. No functional change intended. Bug: 209580772 Change-Id: Ib83932d670cba6bf8f1ed45d2c0e1ed34331d98d Signed-off-by: Fuad Tabba Signed-off-by: Quentin Perret --- arch/arm64/include/asm/kvm_arm.h | 2 ++ arch/arm64/kvm/mmu.c | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/arch/arm64/include/asm/kvm_arm.h b/arch/arm64/include/asm/kvm_arm.h index 3a49a03513d0..7313fac7086d 100644 --- a/arch/arm64/include/asm/kvm_arm.h +++ b/arch/arm64/include/asm/kvm_arm.h @@ -344,6 +344,8 @@ #define PAR_TO_HPFAR(par) \ (((par) & GENMASK_ULL(PHYS_MASK_SHIFT - 1, 12)) >> 8) +#define FAR_MASK GENMASK_ULL(11, 0) + #define ECN(x) { ESR_ELx_EC_##x, #x } #define kvm_arm_exception_class \ diff --git a/arch/arm64/kvm/mmu.c b/arch/arm64/kvm/mmu.c index 610d8f146197..946145a93d85 100644 --- a/arch/arm64/kvm/mmu.c +++ b/arch/arm64/kvm/mmu.c @@ -1678,7 +1678,7 @@ int kvm_handle_guest_abort(struct kvm_vcpu *vcpu) * faulting VA. This is always 12 bits, irrespective * of the page size. */ - fault_ipa |= kvm_vcpu_get_hfar(vcpu) & ((1 << 12) - 1); + fault_ipa |= kvm_vcpu_get_hfar(vcpu) & FAR_MASK; ret = io_mem_abort(vcpu, fault_ipa); goto out_unlock; }