[PATCH 0/4] KVM: x86/mmu: Page fault handling cleanups

From: Sean Christopherson
Date: Wed Sep 23 2020 - 18:04:36 EST


Cleanups for page fault handling that were encountered during early TDX
enabling, but are worthwhile on their own. Specifically, patch 4 fixes an
issue where KVM doesn't detect a spurious page fault (due to the fault
being fixed by a different pCPU+vCPU) and does the full gamut of writing
the SPTE, updating stats, and prefetching SPTEs.

Sean Christopherson (4):
KVM: x86/mmu: Return -EIO if page fault returns RET_PF_INVALID
KVM: x86/mmu: Invert RET_PF_* check when falling through to emulation
KVM: x86/mmu: Return unique RET_PF_* values if the fault was fixed
KVM: x86/mmu: Bail early from final #PF handling on spurious faults

arch/x86/kvm/mmu/mmu.c | 70 +++++++++++++++++++++-------------
arch/x86/kvm/mmu/mmutrace.h | 13 +++----
arch/x86/kvm/mmu/paging_tmpl.h | 3 ++
3 files changed, 52 insertions(+), 34 deletions(-)

--
2.28.0