Re: [PATCHV2 1/3] KVM: x86: introduce kvm_mmu_pte_prefetch structure

From: Sergey Senozhatsky
Date: Wed Oct 20 2021 - 23:28:17 EST


On (21/10/21 11:48), Sergey Senozhatsky wrote:
>
> We are using TDP. And somehow I never see (literally never) async PFs.
> It's always either hva_to_pfn_fast() or hva_to_pfn_slow() or
> __direct_map() from tdp_page_fault().

Hmm, and tdp_page_fault()->fast_page_fault() always fails on
!is_access_allowed(error_code, new_spte), it never handles the faults.
And I see some ->mmu_lock contention:

spin_lock(&vcpu->kvm->mmu_lock);
__direct_map();
spin_unlock(&vcpu->kvm->mmu_lock);

So it might be that we setup guest memory wrongly and never get
advantages of TPD and fast page faults?