mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-23 02:54:32 +08:00
KVM: x86: Check for Intel PT MSR virtualization using KVM cpu caps
Use kvm_cpu_cap_has() to check for Intel PT when processing the list of virtualized MSRs to pave the way toward removing ->pt_supported(). No functional change intended. Reviewed-by: Vitaly Kuznetsov <vkuznets@redhat.com> Signed-off-by: Sean Christopherson <sean.j.christopherson@intel.com> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
This commit is contained in:
parent
a7a200eb4c
commit
7b874c26a6
@ -5220,23 +5220,23 @@ static void kvm_init_msr_list(void)
|
||||
break;
|
||||
case MSR_IA32_RTIT_CTL:
|
||||
case MSR_IA32_RTIT_STATUS:
|
||||
if (!kvm_x86_ops->pt_supported())
|
||||
if (!kvm_cpu_cap_has(X86_FEATURE_INTEL_PT))
|
||||
continue;
|
||||
break;
|
||||
case MSR_IA32_RTIT_CR3_MATCH:
|
||||
if (!kvm_x86_ops->pt_supported() ||
|
||||
if (!kvm_cpu_cap_has(X86_FEATURE_INTEL_PT) ||
|
||||
!intel_pt_validate_hw_cap(PT_CAP_cr3_filtering))
|
||||
continue;
|
||||
break;
|
||||
case MSR_IA32_RTIT_OUTPUT_BASE:
|
||||
case MSR_IA32_RTIT_OUTPUT_MASK:
|
||||
if (!kvm_x86_ops->pt_supported() ||
|
||||
if (!kvm_cpu_cap_has(X86_FEATURE_INTEL_PT) ||
|
||||
(!intel_pt_validate_hw_cap(PT_CAP_topa_output) &&
|
||||
!intel_pt_validate_hw_cap(PT_CAP_single_range_output)))
|
||||
continue;
|
||||
break;
|
||||
case MSR_IA32_RTIT_ADDR0_A ... MSR_IA32_RTIT_ADDR3_B: {
|
||||
if (!kvm_x86_ops->pt_supported() ||
|
||||
if (!kvm_cpu_cap_has(X86_FEATURE_INTEL_PT) ||
|
||||
msrs_to_save_all[i] - MSR_IA32_RTIT_ADDR0_A >=
|
||||
intel_pt_validate_hw_cap(PT_CAP_num_address_ranges) * 2)
|
||||
continue;
|
||||
|
Loading…
Reference in New Issue
Block a user