Commit f5fe0ade authored by Wujie Duan's avatar Wujie Duan Committed by Oliver Upton
Browse files

KVM: arm64: Fix out-of-IPA space translation fault handling



Commit 11e5ea52 ("KVM: arm64: Use helpers to classify exception
types reported via ESR") tried to abstract the translation fault
check when handling an out-of IPA space condition, but incorrectly
replaced it with a permission fault check.

Restore the previous translation fault check.

Fixes: 11e5ea52 ("KVM: arm64: Use helpers to classify exception types reported via ESR")
Acked-by: default avatarArd Biesheuvel <ardb@kernel.org>
Reviewed-by: default avatarMarc Zyngier <maz@kernel.org>
Signed-off-by: default avatarWujie Duan <wjduan@linx-info.com>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/kvmarm/864jd3269g.wl-maz@kernel.org/


Signed-off-by: default avatarOliver Upton <oliver.upton@linux.dev>
parent e89c928b
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1637,7 +1637,7 @@ int kvm_handle_guest_abort(struct kvm_vcpu *vcpu)
	fault_ipa = kvm_vcpu_get_fault_ipa(vcpu);
	is_iabt = kvm_vcpu_trap_is_iabt(vcpu);

	if (esr_fsc_is_permission_fault(esr)) {
	if (esr_fsc_is_translation_fault(esr)) {
		/* Beyond sanitised PARange (which is the IPA limit) */
		if (fault_ipa >= BIT_ULL(get_kvm_ipa_limit())) {
			kvm_inject_size_fault(vcpu);