[PATCH v3 0/5] KVM: x86: Fix EFER reserved bits initialization

Yosry Ahmed posted 5 patches 1 week, 5 days ago
arch/x86/include/asm/kvm_host.h |  2 ++
arch/x86/kvm/msrs.c             | 21 ++-------------------
arch/x86/kvm/msrs.h             |  1 -
arch/x86/kvm/svm/svm.c          |  4 ----
arch/x86/kvm/x86.c              | 18 +++++++++++++++---
5 files changed, 19 insertions(+), 27 deletions(-)
[PATCH v3 0/5] KVM: x86: Fix EFER reserved bits initialization
Posted by Yosry Ahmed 1 week, 5 days ago
v3 of fixing EFER reserved bits initialization on vendor module reload,
and move them into kvm_caps. I reworked and reordered the patches such
that we go straight to reinitializing the EFER reserved bits, instead of
first re-reserving the bits on vendor init if nested=0.

The motivation for the previous approach was simpler backports, but
practically the fixes don't apply cleanly anyway to most stable kernels
due to EFER.LMSLE handling being introduced very recently.

v2 -> v3:
- Drop KVM_SET_SREGS* validity checks fixes, sent separately.
- Re-ordered and reworked the patches to re-initialize EFER reserved
  bits right away.
- Drop the per-vendor op for EFER caps initialization, instead move
  EFER.SVME and EFER.LMSLE handling to generic x86 code.

Yosry Ahmed (5):
  KVM: x86: Move enabling EFER.SVME and EFER.LMSLE to generic EFER setup
  KVM: x86: Disallow EFER.LME and EFER.LMA if long mode is not supported
  KVM: x86: Always initialize EFER reserved bits on vendor
    initialization
  KVM: x86: Reverse the polarity of efer_reserved_bits
  KVM: x86: Move supported EFER bits to kvm_caps

 arch/x86/include/asm/kvm_host.h |  2 ++
 arch/x86/kvm/msrs.c             | 21 ++-------------------
 arch/x86/kvm/msrs.h             |  1 -
 arch/x86/kvm/svm/svm.c          |  4 ----
 arch/x86/kvm/x86.c              | 18 +++++++++++++++---
 5 files changed, 19 insertions(+), 27 deletions(-)


base-commit: 3aec122bdcaf6f8c4ecfc7f6adf6773015ced676
-- 
2.55.0.141.g00534a21ce-goog