From 538fbac74019c13dac341b20fbcc1e96c9a8d01e Mon Sep 17 00:00:00 2001 From: Marc Zyngier Date: Wed, 21 May 2025 11:04:11 +0100 Subject: [PATCH] KVM: arm64: nv: Release faulted-in VNCR page from mmu_lock critical section The conversion to kvm_release_faultin_page() missed the requirement for this to be called within a critical section with mmu_lock held for write. Move this call up to satisfy this requirement. Fixes: 069a05e535496 ("KVM: arm64: nv: Handle VNCR_EL2-triggered faults") Signed-off-by: Marc Zyngier --- arch/arm64/kvm/nested.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/arm64/kvm/nested.c b/arch/arm64/kvm/nested.c index 2381663d2ee98..e7e71f1615f19 100644 --- a/arch/arm64/kvm/nested.c +++ b/arch/arm64/kvm/nested.c @@ -1228,9 +1228,9 @@ static int kvm_translate_vncr(struct kvm_vcpu *vcpu) vt->cpu = -1; kvm_make_request(KVM_REQ_MAP_L1_VNCR_EL2, vcpu); + kvm_release_faultin_page(vcpu->kvm, page, false, vt->wr.pw); } - kvm_release_faultin_page(vcpu->kvm, page, false, vt->wr.pw); if (vt->wr.pw) mark_page_dirty(vcpu->kvm, gfn); -- 2.47.2