Message ID | 20241127201929.4005605-1-aaronlewis@google.com (mailing list archive) |
---|---|
Headers | show |
Series | Unify MSR intercepts in x86 | expand |
On Wed, Nov 27, 2024, Aaron Lewis wrote: > The goal of this series is to unify MSR intercepts into common code between > VMX and SVM. > > The high level structure of this series is to: > 1. Modify SVM MSR intercepts to adopt how VMX does it. > 2. Hoist the newly updated SVM MSR intercept implementation to common x86 code. > 3. Hoist the VMX MSR intercept implementation to common x86 code. > > Aaron Lewis (8): > KVM: SVM: Invert the polarity of the "shadow" MSR interception bitmaps > KVM: SVM: Track MSRPM as "unsigned long", not "u32" > KVM: x86: SVM: Adopt VMX style MSR intercepts in SVM > KVM: SVM: Don't "NULL terminate" the list of possible passthrough MSRs > KVM: x86: Track possible passthrough MSRs in kvm_x86_ops > KVM: x86: Move ownership of passthrough MSR "shadow" to common x86 > KVM: x86: Hoist SVM MSR intercepts to common x86 code > KVM: x86: Hoist VMX MSR intercepts to common x86 code > > Anish Ghulati (2): > KVM: SVM: Disable intercepts for all direct access MSRs on MSR filter changes > KVM: SVM: Delete old SVM MSR management code > > Sean Christopherson (5): > KVM: x86: Use non-atomic bit ops to manipulate "shadow" MSR intercepts > KVM: SVM: Use non-atomic bit ops to manipulate MSR interception bitmaps > KVM: SVM: Pass through GHCB MSR if and only if VM is SEV-ES > KVM: SVM: Drop "always" flag from list of possible passthrough MSRs > KVM: VMX: Make list of possible passthrough MSRs "const" > > arch/x86/include/asm/kvm-x86-ops.h | 5 +- > arch/x86/include/asm/kvm_host.h | 18 ++ > arch/x86/kvm/svm/sev.c | 11 +- > arch/x86/kvm/svm/svm.c | 300 ++++++++++++----------------- > arch/x86/kvm/svm/svm.h | 30 +-- > arch/x86/kvm/vmx/main.c | 30 +++ > arch/x86/kvm/vmx/vmx.c | 144 +++----------- > arch/x86/kvm/vmx/vmx.h | 11 +- > arch/x86/kvm/x86.c | 129 ++++++++++++- > arch/x86/kvm/x86.h | 3 + > 10 files changed, 358 insertions(+), 323 deletions(-) > > -- > 2.47.0.338.g60cca15819-goog Please use `git format-patch` with `--base`, and in general read Documentation/process/maintainer-kvm-x86.rst and Documentation/process/maintainer-tip.rst