Re: [PATCH v10 00/29] KVM: x86/pmu: selftests: Fixes and new tests

From: Sean Christopherson
Date: Tue Jan 30 2024 - 20:00:40 EST


On Tue, 09 Jan 2024 15:02:20 -0800, Sean Christopherson wrote:
> Knock wood, _this_ is the final of fixes and tests for PMU counters. New
> in v10 is a small refactor to treat FIXED as a value, not a flag, when
> emulating RDPMC. Everything else is the same as v9 (although rebased, but
> there were no conflicts).
>
> v10:
> - Collect review. [Dapeng]
> - Treat the FIXED type in RDPMC's ECX as a value, not a flag. [Jim]
>
> [...]

Applied to kvm-x86 pmu, with the fix for the file goof Andrew pointed out.

[01/29] KVM: x86/pmu: Always treat Fixed counters as available when supported
https://github.com/kvm-x86/linux/commit/5eb7fcbdea63
[02/29] KVM: x86/pmu: Allow programming events that match unsupported arch events
https://github.com/kvm-x86/linux/commit/cbbd1aa89139
[03/29] KVM: x86/pmu: Remove KVM's enumeration of Intel's architectural encodings
https://github.com/kvm-x86/linux/commit/db9e008a0f37
[04/29] KVM: x86/pmu: Setup fixed counters' eventsel during PMU initialization
https://github.com/kvm-x86/linux/commit/61bb2ad795a7
[05/29] KVM: x86/pmu: Get eventsel for fixed counters from perf
https://github.com/kvm-x86/linux/commit/7a277c22412c
[06/29] KVM: x86/pmu: Don't ignore bits 31:30 for RDPMC index on AMD
https://github.com/kvm-x86/linux/commit/ecb490770ad4
[07/29] KVM: x86/pmu: Prioritize VMX interception over #GP on RDPMC due to bad index
https://github.com/kvm-x86/linux/commit/7bb7fce13601
[08/29] KVM: x86/pmu: Apply "fast" RDPMC only to Intel PMUs
https://github.com/kvm-x86/linux/commit/d652981db08f
[09/29] KVM: x86/pmu: Disallow "fast" RDPMC for architectural Intel PMUs
https://github.com/kvm-x86/linux/commit/5728a4a0ea79
[10/29] KVM: x86/pmu: Treat "fixed" PMU type in RDPMC as index as a value, not flag
https://github.com/kvm-x86/linux/commit/7a0fc734c20d
[11/29] KVM: x86/pmu: Explicitly check for RDPMC of unsupported Intel PMC types
https://github.com/kvm-x86/linux/commit/a634c76b2c1a
[12/29] KVM: selftests: Add vcpu_set_cpuid_property() to set properties
https://github.com/kvm-x86/linux/commit/d7e68738e1aa
[13/29] KVM: selftests: Drop the "name" param from KVM_X86_PMU_FEATURE()
https://github.com/kvm-x86/linux/commit/ff76d7712510
[14/29] KVM: selftests: Extend {kvm,this}_pmu_has() to support fixed counters
https://github.com/kvm-x86/linux/commit/370d53632289
[15/29] KVM: selftests: Add pmu.h and lib/pmu.c for common PMU assets
https://github.com/kvm-x86/linux/commit/e6faa0497057
[16/29] KVM: selftests: Test Intel PMU architectural events on gp counters
https://github.com/kvm-x86/linux/commit/4f1bd6b16074
[17/29] KVM: selftests: Test Intel PMU architectural events on fixed counters
https://github.com/kvm-x86/linux/commit/3e26b825f87d
[18/29] KVM: selftests: Test consistency of CPUID with num of gp counters
https://github.com/kvm-x86/linux/commit/7137cf751b9b
[19/29] KVM: selftests: Test consistency of CPUID with num of fixed counters
https://github.com/kvm-x86/linux/commit/c7d7c76ecf78
[20/29] KVM: selftests: Add functional test for Intel's fixed PMU counters
https://github.com/kvm-x86/linux/commit/787071fd0262
[21/29] KVM: selftests: Expand PMU counters test to verify LLC events
https://github.com/kvm-x86/linux/commit/b55e7adf633a
[22/29] KVM: selftests: Add a helper to query if the PMU module param is enabled
https://github.com/kvm-x86/linux/commit/c85e986716b0
[23/29] KVM: selftests: Add helpers to read integer module params
https://github.com/kvm-x86/linux/commit/45e4755c39fc
[24/29] KVM: selftests: Query module param to detect FEP in MSR filtering test
https://github.com/kvm-x86/linux/commit/0326cc6b02c8
[25/29] KVM: selftests: Move KVM_FEP macro into common library header
https://github.com/kvm-x86/linux/commit/00856e17da73
[26/29] KVM: selftests: Test PMC virtualization with forced emulation
https://github.com/kvm-x86/linux/commit/cd34fd8c758e
[27/29] KVM: selftests: Add a forced emulation variation of KVM_ASM_SAFE()
https://github.com/kvm-x86/linux/commit/ab3b6a7de8df
[28/29] KVM: selftests: Add helpers for safe and safe+forced RDMSR, RDPMC, and XGETBV
https://github.com/kvm-x86/linux/commit/b5e66df34cb0
[29/29] KVM: selftests: Extend PMU counters test to validate RDPMC after WRMSR
https://github.com/kvm-x86/linux/commit/a8a37f555684

--
https://github.com/kvm-x86/linux/tree/next