[RFC v1 0/9] PEBS enabling in KVM guest

From: Luwei Kang
Date: Thu Aug 29 2019 - 01:38:49 EST


Intel new hardware introduces some Precise Event-Based Sampling (PEBS)
extensions that output the PEBS record to Intel PT stream instead of
DS area. The PEBS record will be packaged in a specific format when
outputing to Intel PT.

This patch set will enable PEBS functionality in KVM Guest by PEBS
output to Intel PT. The native driver as [1] (still under review).

[1] https://www.spinics.net/lists/kernel/msg3215354.html

Luwei Kang (9):
KVM: x86: Add base address parameter for get_fixed_pmc function
KVM: x86: PEBS via Intel PT HW feature detection
KVM: x86: Implement MSR_IA32_PEBS_ENABLE read/write emulation
KVM: x86: Implement counter reload MSRs read/write emulation
KVM: x86: Allocate performance counter for PEBS event
KVM: x86: Add shadow value of PEBS status
KVM: X86: Expose PDCM cpuid to guest
KVM: X86: MSR_IA32_PERF_CAPABILITIES MSR emulation
KVM: x86: Expose PEBS feature to guest

arch/x86/include/asm/kvm_host.h | 8 ++++
arch/x86/include/asm/msr-index.h | 12 ++++++
arch/x86/kvm/cpuid.c | 3 +-
arch/x86/kvm/pmu.c | 57 ++++++++++++++++++++++----
arch/x86/kvm/pmu.h | 11 ++---
arch/x86/kvm/pmu_amd.c | 2 +-
arch/x86/kvm/svm.c | 12 ++++++
arch/x86/kvm/vmx/capabilities.h | 21 ++++++++++
arch/x86/kvm/vmx/pmu_intel.c | 88 +++++++++++++++++++++++++++++++++++-----
arch/x86/kvm/vmx/vmx.c | 24 ++++++++++-
arch/x86/kvm/x86.c | 22 +++++++---
11 files changed, 229 insertions(+), 31 deletions(-)

--
1.8.3.1