Re: [PATCH v5 09/26] KVM: VMX: nVMX: Support TSC scaling and PERF_GLOBAL_CTRL with enlightened VMCS
From: Sean Christopherson
Date: Fri Aug 19 2022 - 10:49:46 EST
On Fri, Aug 19, 2022, Vitaly Kuznetsov wrote:
> Sean Christopherson <seanjc@xxxxxxxxxx> writes:
>
> > On Tue, Aug 02, 2022, Vitaly Kuznetsov wrote:
> >> diff --git a/arch/x86/kvm/vmx/evmcs.h b/arch/x86/kvm/vmx/evmcs.h
> >> index f886a8ff0342..4b809c79ae63 100644
> >> --- a/arch/x86/kvm/vmx/evmcs.h
> >> +++ b/arch/x86/kvm/vmx/evmcs.h
> >> @@ -37,16 +37,9 @@ DECLARE_STATIC_KEY_FALSE(enable_evmcs);
> >> * EPTP_LIST_ADDRESS = 0x00002024,
> >> * VMREAD_BITMAP = 0x00002026,
> >> * VMWRITE_BITMAP = 0x00002028,
> >> - *
> >> - * TSC_MULTIPLIER = 0x00002032,
> >> * PLE_GAP = 0x00004020,
> >> * PLE_WINDOW = 0x00004022,
> >> * VMX_PREEMPTION_TIMER_VALUE = 0x0000482E,
> >> - * GUEST_IA32_PERF_GLOBAL_CTRL = 0x00002808,
> >> - * HOST_IA32_PERF_GLOBAL_CTRL = 0x00002c04,
> >> - *
> >> - * Currently unsupported in KVM:
> >> - * GUEST_IA32_RTIT_CTL = 0x00002814,
> >
> > Almost forgot: is deleting this chunk of the comment intentional?
> >
>
> Intentional or not (I forgot :-), GUEST_IA32_RTIT_CTL is supported/used
> by KVM since
>
> commit f99e3daf94ff35dd4a878d32ff66e1fd35223ad6
> Author: Chao Peng <chao.p.peng@xxxxxxxxxxxxxxx>
> Date: Wed Oct 24 16:05:10 2018 +0800
>
> KVM: x86: Add Intel PT virtualization work mode
>
> ...
>
> commit bf8c55d8dc094c85a3f98cd302a4dddb720dd63f
> Author: Chao Peng <chao.p.peng@xxxxxxxxxxxxxxx>
> Date: Wed Oct 24 16:05:14 2018 +0800
>
> KVM: x86: Implement Intel PT MSRs read/write emulation
>
> but there's no corresponding field in eVMCS. It would probably be better
> to remove "Currently unsupported in KVM:" line leaving
>
> "GUEST_IA32_RTIT_CTL = 0x00002814"
>
> in place.
GUEST_IA32_RTIT_CTL isn't supported for nested VMX though, which is how I
interpreted the "Currently unsupported in KVM:". Would it be accurate to extend
that part of the comment to "Currently unsupported in KVM for nested VMX:"?