Commit 51d165e9 authored by Wei-Lin Chang's avatar Wei-Lin Chang Committed by Oliver Upton
Browse files

KVM: arm64: Remove stage 2 read fault check



In the non-NV case, read permission is always granted when mapping
stage-2, so checking for it doesn't bring much. On the other hand,
shadow stage-2 for NV guests could potentially have non-readable
mappings when we align the permissions with those that L1 set for L2, we
shouldn't be checking for read faults in this case either.

So just remove this check.

Suggested-by: default avatarOliver Upton <oliver.upton@linux.dev>
Suggested-by: default avatarMarc Zyngier <maz@kernel.org>
Signed-off-by: default avatarWei-Lin Chang <r09922117@csie.ntu.edu.tw>
Link: https://lore.kernel.org/r/20250908064806.4093081-1-r09922117@csie.ntu.edu.tw


Signed-off-by: default avatarOliver Upton <oliver.upton@linux.dev>
parent 2dc720e6
Loading
Loading
Loading
Loading
+0 −5
Original line number Diff line number Diff line
@@ -1545,11 +1545,6 @@ static int user_mem_abort(struct kvm_vcpu *vcpu, phys_addr_t fault_ipa,
	exec_fault = kvm_vcpu_trap_is_exec_fault(vcpu);
	VM_BUG_ON(write_fault && exec_fault);

	if (fault_is_perm && !write_fault && !exec_fault) {
		kvm_err("Unexpected L2 read permission error\n");
		return -EFAULT;
	}

	if (!is_protected_kvm_enabled())
		memcache = &vcpu->arch.mmu_page_cache;
	else