Commit ef1d2ee1 authored by Sean Christopherson's avatar Sean Christopherson Committed by Paolo Bonzini
Browse files

KVM: VMX: Check guest support for RDTSCP before processing MSR_TSC_AUX



Check for RDTSCP support prior to checking if MSR_TSC_AUX is in the uret
MSRs array so that the array lookup and manipulation are back-to-back.
This paves the way toward adding a helper to wrap the lookup and
manipulation.

No functional change intended.

Signed-off-by: default avatarSean Christopherson <sean.j.christopherson@intel.com>
Message-Id: <20200923180409.32255-10-sean.j.christopherson@intel.com>
Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
parent 1e7a4830
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -1651,9 +1651,11 @@ static void setup_msrs(struct vcpu_vmx *vmx)
	index = __vmx_find_uret_msr(vmx, MSR_EFER);
	if (index >= 0 && update_transition_efer(vmx, index))
		move_msr_up(vmx, index, nr_active_uret_msrs++);
	if (guest_cpuid_has(&vmx->vcpu, X86_FEATURE_RDTSCP)) {
		index = __vmx_find_uret_msr(vmx, MSR_TSC_AUX);
	if (index >= 0 && guest_cpuid_has(&vmx->vcpu, X86_FEATURE_RDTSCP))
		if (index >= 0)
			move_msr_up(vmx, index, nr_active_uret_msrs++);
	}
	index = __vmx_find_uret_msr(vmx, MSR_IA32_TSX_CTRL);
	if (index >= 0)
		move_msr_up(vmx, index, nr_active_uret_msrs++);