[PATCH v2 0/7] KVM: nVMX: Bug fixes and cleanup

From: Sean Christopherson
Date: Wed Sep 23 2020 - 14:44:55 EST


Fix for a brutal segment caching bug that manifested as random nested
VM-Enter failures when running with unrestricted guest disabled. A few
more bug fixes and cleanups for stuff found by inspection when hunting
down the caching issue.

v2:
- Rebased to kvm/queue, commit e1ba1a15af73 ("KVM: SVM: Enable INVPCID
feature on AMD").

Sean Christopherson (7):
KVM: nVMX: Reset the segment cache when stuffing guest segs
KVM: nVMX: Reload vmcs01 if getting vmcs12's pages fails
KVM: nVMX: Explicitly check for valid guest state for !unrestricted
guest
KVM: nVMX: Move free_nested() below vmx_switch_vmcs()
KVM: nVMX: Ensure vmcs01 is the loaded VMCS when freeing nested state
KVM: nVMX: Drop redundant VMCS switch and free_nested() call
KVM: nVMX: WARN on attempt to switch the currently loaded VMCS

arch/x86/kvm/vmx/nested.c | 103 ++++++++++++++++++++------------------
arch/x86/kvm/vmx/vmx.c | 8 +--
arch/x86/kvm/vmx/vmx.h | 9 ++++
3 files changed, 65 insertions(+), 55 deletions(-)

--
2.28.0