Commit 35b80f7b authored by Sean Christopherson's avatar Sean Christopherson Committed by Paolo Bonzini
Browse files

KVM: LoongArch: Mark "struct page" pfn accessed before dropping mmu_lock



Mark pages accessed before dropping mmu_lock when faulting in guest memory
so that LoongArch can convert to kvm_release_faultin_page() without
tripping its lockdep assertion on mmu_lock being held.

Reviewed-by: default avatarBibo Mao <maobibo@loongson.cn>
Signed-off-by: default avatarSean Christopherson <seanjc@google.com>
Tested-by: default avatarDmitry Osipenko <dmitry.osipenko@collabora.com>
Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
Message-ID: <20241010182427.1434605-68-seanjc@google.com>
parent 4a2bc01b
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -902,13 +902,13 @@ static int kvm_map_page(struct kvm_vcpu *vcpu, unsigned long gpa, bool write)

	if (writeable)
		kvm_set_pfn_dirty(pfn);
	kvm_release_pfn_clean(pfn);

	spin_unlock(&kvm->mmu_lock);

	if (prot_bits & _PAGE_DIRTY)
		mark_page_dirty_in_slot(kvm, memslot, gfn);

	kvm_release_pfn_clean(pfn);
out:
	srcu_read_unlock(&kvm->srcu, srcu_idx);
	return err;