mirror of
https://github.com/torvalds/linux.git
synced 2026-07-31 03:27:03 +02:00
KVM: VMX: Restore host's MSR_IA32_RTIT_CTL when it's not zero
A minor optimization to WRMSR MSR_IA32_RTIT_CTL when necessary. Opportunistically refine the comment to call out that KVM requires VM_EXIT_CLEAR_IA32_RTIT_CTL to expose PT to the guest. Reviewed-by: Sean Christopherson <seanjc@google.com> Signed-off-by: Xiaoyao Li <xiaoyao.li@intel.com> Message-Id: <20210827070249.924633-2-xiaoyao.li@intel.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
2839180ce5
commit
2e6e0d683b
|
|
@ -1074,8 +1074,12 @@ static void pt_guest_exit(struct vcpu_vmx *vmx)
|
|||
pt_load_msr(&vmx->pt_desc.host, vmx->pt_desc.addr_range);
|
||||
}
|
||||
|
||||
/* Reload host state (IA32_RTIT_CTL will be cleared on VM exit). */
|
||||
wrmsrl(MSR_IA32_RTIT_CTL, vmx->pt_desc.host.ctl);
|
||||
/*
|
||||
* KVM requires VM_EXIT_CLEAR_IA32_RTIT_CTL to expose PT to the guest,
|
||||
* i.e. RTIT_CTL is always cleared on VM-Exit. Restore it if necessary.
|
||||
*/
|
||||
if (vmx->pt_desc.host.ctl)
|
||||
wrmsrl(MSR_IA32_RTIT_CTL, vmx->pt_desc.host.ctl);
|
||||
}
|
||||
|
||||
void vmx_set_host_fs_gs(struct vmcs_host_state *host, u16 fs_sel, u16 gs_sel,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user