Re: [kvm-unit-tests PATCH v5 00/27] x86/pmu: Test case optimization, fixes and additions

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 11/2/22 23:50, Sean Christopherson wrote:
This series is a big pile of PMU cleanups and enhancements from Like.

The changes are roughly divided into three parts: (1) fixes (2) cleanups,
and (3) new test cases.  The changes are bundled in a mega-series as the
original, separate series was difficult to review/manage due to a number
of dependencies.

There are no major changes in the test logic. The big cleanups are to add
lib/x86/pmu.[c,h] and a global PMU capabilities struct to improve
readability of the code and to hide some AMD vs. Intel details.

Like's v4 was tested on AMD Zen3/4 and Intel ICX/SPR machines, but this
version has only been tested on AMD Zen3 (Milan) and Intel ICX and HSW,
i.e. I haven't tested AMD PMU v2 or anything new in SPR (if there is
anything in SPR?).

Like Xu (22):
   x86/pmu: Add PDCM check before accessing PERF_CAP register
   x86/pmu: Test emulation instructions on full-width counters
   x86/pmu: Pop up FW prefix to avoid out-of-context propagation
   x86/pmu: Report SKIP when testing Intel LBR on AMD platforms
   x86/pmu: Fix printed messages for emulated instruction test
   x86/pmu: Introduce __start_event() to drop all of the manual zeroing
   x86/pmu: Introduce multiple_{one, many}() to improve readability
   x86/pmu: Reset the expected count of the fixed counter 0 when i386
   x86: create pmu group for quick pmu-scope testing
   x86/pmu: Refine info to clarify the current support
   x86/pmu: Update rdpmc testcase to cover #GP path
   x86/pmu: Rename PC_VECTOR to PMI_VECTOR for better readability
   x86/pmu: Add lib/x86/pmu.[c.h] and move common code to header files
   x86/pmu: Snapshot PMU perf_capabilities during BSP initialization
   x86/pmu: Track GP counter and event select base MSRs in pmu_caps
   x86/pmu: Add helper to get fixed counter MSR index
   x86/pmu: Track global status/control/clear MSRs in pmu_caps
   x86: Add tests for Guest Processor Event Based Sampling (PEBS)
   x86/pmu: Add global helpers to cover Intel Arch PMU Version 1
   x86/pmu: Add gp_events pointer to route different event tables
   x86/pmu: Update testcases to cover AMD PMU
   x86/pmu: Add AMD Guest PerfMonV2 testcases

Sean Christopherson (5):
   x86: Add a helper for the BSP's final init sequence common to all
     flavors
   x86/pmu: Snapshot CPUID.0xA PMU capabilities during BSP initialization
   x86/pmu: Drop wrappers that just passthrough pmu_caps fields
   x86/pmu: Reset GP and Fixed counters during pmu_init().
   x86/pmu: Add pmu_caps flag to track if CPU is Intel (versus AMD)

  lib/x86/asm/setup.h |   1 +
  lib/x86/msr.h       |  30 +++
  lib/x86/pmu.c       |  67 +++++++
  lib/x86/pmu.h       | 187 +++++++++++++++++++
  lib/x86/processor.h |  80 ++------
  lib/x86/setup.c     |  13 +-
  x86/Makefile.common |   1 +
  x86/Makefile.x86_64 |   1 +
  x86/cstart.S        |   4 +-
  x86/cstart64.S      |   4 +-
  x86/pmu.c           | 360 ++++++++++++++++++++----------------
  x86/pmu_lbr.c       |  24 +--
  x86/pmu_pebs.c      | 433 ++++++++++++++++++++++++++++++++++++++++++++
  x86/unittests.cfg   |  10 +
  x86/vmx_tests.c     |   1 +
  15 files changed, 975 insertions(+), 241 deletions(-)
  create mode 100644 lib/x86/pmu.c
  create mode 100644 lib/x86/pmu.h
  create mode 100644 x86/pmu_pebs.c

Applied, thanks.

Paolo




[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]

  Powered by Linux