[0/7] KVM: selftests: Test the consistency of the PMU's CPUID and its features

Message ID 20230323072714.82289-1-likexu@tencent.com
Headers
Series KVM: selftests: Test the consistency of the PMU's CPUID and its features |

Message

Like Xu March 23, 2023, 7:27 a.m. UTC
  Hi,

The KVM selfstests shows advantages over the KUT in terms of finding
defects through flexible and varied guest settings form KVM user space.

This patch set tests whether Intel vPMU works properly with different
Intel CPUID.0xA configurations, in which three issues were identified.
It also provides test scaffolding and a sufficient number of pmu test cases
to subsequently provide adequate code coverage of AMD vPMU or Intel
complex features such as LBR or PEBS in selftests.

Please feel free to add more tests or share valuable comments.

Related bugs:
KVM: x86/pmu: Fix emulation on Intel counters' bit width
(https://lore.kernel.org/kvm/20230322093117.48335-1-likexu@tencent.com/)
KVM: x86/pmu: Add Intel PMU supported fixed counters bit mask
(https://lore.kernel.org/kvm/20230321112742.25255-1-likexu@tencent.com/)
KVM: x86/pmu: Prevent the PMU from counting disallowed events
(https://lore.kernel.org/kvm/20230307141400.1486314-2-aaronlewis@google.com/)

Prerequisite:
KVM: selftests: Report enable_pmu module value when test is skipped
KVM: selftests: Add a helper to read kvm boolean module parameters
(https://lore.kernel.org/kvm/20230313085311.25327-1-likexu@tencent.com/)

Jinrong Liang (3):
  KVM: selftests: Test Intel PMU architectural events on fixed counters
  KVM: selftests: Test consistency of CPUID with num of Fixed counters
  KVM: selftests: Test consistency of PMU MSRs with Intel PMU version

Like Xu (4):
  KVM: selftests: Test Intel PMU architectural events on gp counters
  KVM: selftests: Test consistency of CPUID with num of GP counters
  KVM: selftests: Test Intel supported fixed counters bit mask
  KVM: selftests: Test Intel counters' bit width emulation

 tools/testing/selftests/kvm/Makefile          |   1 +
 .../selftests/kvm/x86_64/pmu_cpuid_test.c     | 626 ++++++++++++++++++
 2 files changed, 627 insertions(+)
 create mode 100644 tools/testing/selftests/kvm/x86_64/pmu_cpuid_test.c

base-commit: 94db7c022e10c76ac8ac27878822c3deed80aae1
  

Comments

Sean Christopherson May 24, 2023, 10:53 p.m. UTC | #1
On Thu, Mar 23, 2023, Like Xu wrote:
> Hi,
> 
> The KVM selfstests shows advantages over the KUT in terms of finding
> defects through flexible and varied guest settings form KVM user space.
> 
> This patch set tests whether Intel vPMU works properly with different
> Intel CPUID.0xA configurations, in which three issues were identified.
> It also provides test scaffolding and a sufficient number of pmu test cases
> to subsequently provide adequate code coverage of AMD vPMU or Intel
> complex features such as LBR or PEBS in selftests.
> 
> Please feel free to add more tests or share valuable comments.
> 
> Related bugs:
> KVM: x86/pmu: Fix emulation on Intel counters' bit width
> (https://lore.kernel.org/kvm/20230322093117.48335-1-likexu@tencent.com/)
> KVM: x86/pmu: Add Intel PMU supported fixed counters bit mask
> (https://lore.kernel.org/kvm/20230321112742.25255-1-likexu@tencent.com/)

Can you send a single combined series for these fixes, plus the tests in this
series?  I expect to apply the fixes before the tests, but I want to make it as
unlikely as possible that I forget and apply tests that fail.

Thanks!