On 28/08/20 10:56, Chenyi Qiang wrote: > The first three patches fix a issue for the nested VMX controls MSRs. The > issue happens when I use QEMU to run nested VM. The VM_{ENTRY, > EXIT}_LOAD_IA32_PERF_GLOBAL_CTRL and VM_{ENTRY_LOAD, EXIT_CLEAR}_BNDCFGS > in L1 MSR_IA32_VMX_TRUE_{ENTRY, EXIT}_CTLS MSR are always cleared > regardless of whether it supports in L1. This is because QEMU gets the > nested VMX MSRs from vmcs_config.nested_vmx_msrs which doesn't expose > these two fields. Then, when QEMU initializes the features MSRs after > SET_CPUID, it will override the nested VMX MSR values which has been > updated according to guest CPUID during SET_CPUID. This patch series > just expose the missing fields in nested VMX {ENTRY, EXIT} controls > MSR and adds the support to update nested VMX MSRs after set_vmx_msrs. > > The last two patches are a minor fix and cleanup. > > Chenyi Qiang (5): > KVM: nVMX: Fix VMX controls MSRs setup when nested VMX enabled > KVM: nVMX: Verify the VMX controls MSRs with the global capability > when setting VMX MSRs > KVM: nVMX: Update VMX controls MSR according to guest CPUID after > setting VMX MSRs > KVM: nVMX: Fix the update value of nested load IA32_PERF_GLOBAL_CTRL > control > KVM: nVMX: Simplify the initialization of nested_vmx_msrs > > arch/x86/kvm/vmx/nested.c | 79 +++++++++++++++++++++++++++------------ > arch/x86/kvm/vmx/vmx.c | 9 +++-- > 2 files changed, 62 insertions(+), 26 deletions(-) > Queued patch 1/4/5, thanks. Paolo