mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH RFC v1 0/5] KVM: VMX: Support TscScaling and EnclsExitingBitmap whith eVMCS
@ 2022-06-15 12:49 Vitaly Kuznetsov
  2022-06-15 12:49 ` [PATCH RFC v1 1/5] x86/hyperv: Fix 'struct hv_enlightened_vmcs' definition Vitaly Kuznetsov
                   ` (4 more replies)
  0 siblings, 5 replies; 6+ messages in thread
From: Vitaly Kuznetsov @ 2022-06-15 12:49 UTC (permalink / raw)
  To: kvm, Paolo Bonzini, Anirudh Rayabharam
  Cc: Sean Christopherson, Wanpeng Li, Jim Mattson, linux-hyperv, linux-kernel

Enlightened VMCS v1 definition was updates to include fields for the
following features:
    - PerfGlobalCtrl
    - EnclsExitingBitmap
    - TSC scaling
    - GuestLbrCtl
    - CET
    - SSP

Add support for EnclsExitingBitmap and TSC scaling to KVM. PerfGlobalCtrl 
doesn't work correctly with Win11, don't enable it yet. SSP, CET and 
GuestLbrCtl are not currently supported by KVM.

RFC part: the change dropping SECONDARY_EXEC_TSC_SCALING from 
EVMCS1_UNSUPPORTED_2NDEXEC likely breaks migration for Hyper-V on KVM: in
case guest which started on a 'fixed' KVM and uses TSC multiplier feature
gets migrated to an older 'unfixed' KVM the feature will become unusable.
Unfortunately, eVMCS's version is still '1' so we probably need a new
CAP in KVM to make TSC scaling an explicit opt-in.

Vitaly Kuznetsov (5):
  x86/hyperv: Fix 'struct hv_enlightened_vmcs' definition
  x86/hyperv: Update 'struct hv_enlightened_vmcs' definition
  KVM: VMX: Define VMCS-to-EVMCS conversion for the new fields
  KVM: nVMX: Support several new fields in eVMCSv1
  KVM: VMX: Support TSC scaling with enlightened VMCS

 arch/x86/include/asm/hyperv-tlfs.h | 19 ++++++++++++++----
 arch/x86/kvm/vmx/evmcs.c           | 26 +++++++++++++++++++++++++
 arch/x86/kvm/vmx/evmcs.h           | 11 ++++-------
 arch/x86/kvm/vmx/nested.c          | 31 ++++++++++++++++++++++++++++++
 4 files changed, 76 insertions(+), 11 deletions(-)

-- 
2.35.3


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2022-06-15 12:50 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-15 12:49 [PATCH RFC v1 0/5] KVM: VMX: Support TscScaling and EnclsExitingBitmap whith eVMCS Vitaly Kuznetsov
2022-06-15 12:49 ` [PATCH RFC v1 1/5] x86/hyperv: Fix 'struct hv_enlightened_vmcs' definition Vitaly Kuznetsov
2022-06-15 12:49 ` [PATCH RFC v1 2/5] x86/hyperv: Update " Vitaly Kuznetsov
2022-06-15 12:49 ` [PATCH RFC v1 3/5] KVM: VMX: Define VMCS-to-EVMCS conversion for the new fields Vitaly Kuznetsov
2022-06-15 12:49 ` [PATCH RFC v1 4/5] KVM: nVMX: Support several new fields in eVMCSv1 Vitaly Kuznetsov
2022-06-15 12:49 ` [PATCH RFC v1 5/5] KVM: VMX: Support TSC scaling with enlightened VMCS Vitaly Kuznetsov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®