]> git.itanic.dy.fi Git - linux-stable/commitdiff
KVM: nVMX: Use cached host MSR_IA32_VMX_MISC value for setting up nested MSR
authorVitaly Kuznetsov <vkuznets@redhat.com>
Tue, 30 Aug 2022 13:37:37 +0000 (15:37 +0200)
committerPaolo Bonzini <pbonzini@redhat.com>
Mon, 26 Sep 2022 16:03:02 +0000 (12:03 -0400)
vmcs_config has cached host MSR_IA32_VMX_MISC value, use it for setting
up nested MSR_IA32_VMX_MISC in nested_vmx_setup_ctls_msrs() and avoid the
redundant rdmsr().

No (real) functional change intended.

Reviewed-by: Jim Mattson <jmattson@google.com>
Reviewed-by: Maxim Levitsky <mlevitsk@redhat.com>
Signed-off-by: Vitaly Kuznetsov <vkuznets@redhat.com>
Signed-off-by: Sean Christopherson <seanjc@google.com>
Link: https://lore.kernel.org/r/20220830133737.1539624-34-vkuznets@redhat.com
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/vmx/nested.c

index af807cc2ad154c15acf41c5da312a27743076015..6c8b61a7904eff88b7324153474bc7522f8b8dd1 100644 (file)
@@ -6758,10 +6758,7 @@ void nested_vmx_setup_ctls_msrs(struct vmcs_config *vmcs_conf, u32 ept_caps)
                msrs->secondary_ctls_high |= SECONDARY_EXEC_ENCLS_EXITING;
 
        /* miscellaneous data */
-       rdmsr(MSR_IA32_VMX_MISC,
-               msrs->misc_low,
-               msrs->misc_high);
-       msrs->misc_low &= VMX_MISC_SAVE_EFER_LMA;
+       msrs->misc_low = (u32)vmcs_conf->misc & VMX_MISC_SAVE_EFER_LMA;
        msrs->misc_low |=
                MSR_IA32_VMX_MISC_VMWRITE_SHADOW_RO_FIELDS |
                VMX_MISC_EMULATED_PREEMPTION_TIMER_RATE |