On Fri, May 07, 2021, Kai Huang wrote: > Currently pf_fixed is not increased when prefault is true. This is not > correct, since prefault here really means "async page fault completed". > In that case, the original page fault from the guest was morphed into as > async page fault and pf_fixed was not increased. So when prefault > indicates async page fault is completed, pf_fixed should be increased. > > Additionally, currently pf_fixed is also increased even when page fault > is spurious, while legacy MMU increases pf_fixed when page fault returns > RET_PF_EMULATE or RET_PF_FIXED. > > To fix above two issues, change to increase pf_fixed when return value > is not RET_PF_SPURIOUS (RET_PF_RETRY has already been ruled out by > reaching here). > > More information: > https://lore.kernel.org/kvm/cover.1620200410.git.kai.huang@xxxxxxxxx/T/#mbb5f8083e58a2cd262231512b9211cbe70fc3bd5 > > Fixes: bb18842e2111 ("kvm: x86/mmu: Add TDP MMU PF handler") > Signed-off-by: Kai Huang <kai.huang@xxxxxxxxx> > --- Reviewed-by: Sean Christopherson <seanjc@xxxxxxxxxx>