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

From: Xiaoyao Li
Date: Fri Aug 28 2020 - 22:51:58 EST


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@xxxxxxxxx> 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.