Re: [PATCH 1/5] KVM: nVMX: Fix VMX controls MSRs setup when nested VMX enabled

Xiaoyao Li
2020-08-29T02:51:56Z

On 8/29/2020 9:49 AM, Chenyi Qiang wrote:
>
>
> On 8/29/2020 1:43 AM, Jim Mattson wrote:
>> On Fri, Aug 28, 2020 at 1:54 AM Chenyi Qiang <chenyi.qiang@intel.com>
>> wrote:
>>>
>>> KVM supports the nested VM_{EXIT, ENTRY}_LOAD_IA32_PERF_GLOBAL_CTRL and
>>> VM_{ENTRY_LOAD, EXIT_CLEAR}_BNDCFGS, but they doesn't expose during
>>> the setup of nested VMX controls MSR.
>>>
>>
>> Aren't these features added conditionally in
>> nested_vmx_entry_exit_ctls_update() and
>> nested_vmx_pmu_entry_exit_ctls_update()?
>>
>
> Yes, but I assume vmcs_config.nested should reflect the global
> capability of VMX MSR. KVM supports these two controls, so should be
> exposed here.

No. I prefer to say they are removed conditionally in
nested_vmx_entry_exit_ctls_update() and
nested_vmx_pmu_entry_exit_ctls_update().

Userspace calls vmx_get_msr_feature() to query what KVM supports for
these VMX MSR. In vmx_get_msr_feature(), it returns the value of
vmcs_config.nested. As KVM supports these two bits, we should advertise
them in vmcs_config.nested and report to userspace.