Message ID | 20240116060129.55473-1-shahuang@redhat.com (mailing list archive) |
---|---|
Headers | show |
Series | KVM: selftests: aarch64: Introduce pmu_event_filter_test | expand |
Hi Shaoqin, On 1/16/24 07:01, Shaoqin Huang wrote: > The test is inspired by the pmu_event_filter_test which implemented by x86. On > the arm64 platform, there is the same ability to set the pmu_event_filter > through the KVM_ARM_VCPU_PMU_V3_FILTER attribute. So add the test for arm64. > > The series first move some pmu common code from vpmu_counter_access to > lib/aarch64/vpmu.c and include/aarch64/vpmu.h, which can be used by > pmu_event_filter_test. Then fix a bug related to the [enable|disable]_counter, > and at last, implement the test itself. which branch does it apply on? I fail to apply on top on main. Or can you provide a branch? Eric > > Changelog: > ---------- > v2->v3: > - Check the pmceid in guest code instead of pmu event count since different > hardware may have different event count result, check pmceid makes it stable > on different platform. [Eric] > - Some typo fixed and commit message improved. > > v1->v2: > - Improve the commit message. [Eric] > - Fix the bug in [enable|disable]_counter. [Raghavendra & Marc] > - Add the check if kvm has attr KVM_ARM_VCPU_PMU_V3_FILTER. > - Add if host pmu support the test event throught pmceid0. > - Split the test_invalid_filter() to another patch. [Eric] > > v1: https://lore.kernel.org/all/20231123063750.2176250-1-shahuang@redhat.com/ > v2: https://lore.kernel.org/all/20231129072712.2667337-1-shahuang@redhat.com/ > > Shaoqin Huang (5): > KVM: selftests: aarch64: Make the [create|destroy]_vpmu_vm() public > KVM: selftests: aarch64: Move pmu helper functions into vpmu.h > KVM: selftests: aarch64: Fix the buggy [enable|disable]_counter > KVM: selftests: aarch64: Introduce pmu_event_filter_test > KVM: selftests: aarch64: Add invalid filter test in > pmu_event_filter_test > > tools/testing/selftests/kvm/Makefile | 2 + > .../kvm/aarch64/pmu_event_filter_test.c | 255 ++++++++++++++++++ > .../kvm/aarch64/vpmu_counter_access.c | 218 ++------------- > .../selftests/kvm/include/aarch64/vpmu.h | 135 ++++++++++ > .../testing/selftests/kvm/lib/aarch64/vpmu.c | 74 +++++ > 5 files changed, 490 insertions(+), 194 deletions(-) > create mode 100644 tools/testing/selftests/kvm/aarch64/pmu_event_filter_test.c > create mode 100644 tools/testing/selftests/kvm/include/aarch64/vpmu.h > create mode 100644 tools/testing/selftests/kvm/lib/aarch64/vpmu.c >
Hi Eric, On 1/26/24 18:25, Eric Auger wrote: > Hi Shaoqin, > > On 1/16/24 07:01, Shaoqin Huang wrote: >> The test is inspired by the pmu_event_filter_test which implemented by x86. On >> the arm64 platform, there is the same ability to set the pmu_event_filter >> through the KVM_ARM_VCPU_PMU_V3_FILTER attribute. So add the test for arm64. >> >> The series first move some pmu common code from vpmu_counter_access to >> lib/aarch64/vpmu.c and include/aarch64/vpmu.h, which can be used by >> pmu_event_filter_test. Then fix a bug related to the [enable|disable]_counter, >> and at last, implement the test itself. > which branch does it apply on? I fail to apply on top on main. > > Or can you provide a branch? This was based on v6.7. > > Eric >> >> Changelog: >> ---------- >> v2->v3: >> - Check the pmceid in guest code instead of pmu event count since different >> hardware may have different event count result, check pmceid makes it stable >> on different platform. [Eric] >> - Some typo fixed and commit message improved. >> >> v1->v2: >> - Improve the commit message. [Eric] >> - Fix the bug in [enable|disable]_counter. [Raghavendra & Marc] >> - Add the check if kvm has attr KVM_ARM_VCPU_PMU_V3_FILTER. >> - Add if host pmu support the test event throught pmceid0. >> - Split the test_invalid_filter() to another patch. [Eric] >> >> v1: https://lore.kernel.org/all/20231123063750.2176250-1-shahuang@redhat.com/ >> v2: https://lore.kernel.org/all/20231129072712.2667337-1-shahuang@redhat.com/ >> >> Shaoqin Huang (5): >> KVM: selftests: aarch64: Make the [create|destroy]_vpmu_vm() public >> KVM: selftests: aarch64: Move pmu helper functions into vpmu.h >> KVM: selftests: aarch64: Fix the buggy [enable|disable]_counter >> KVM: selftests: aarch64: Introduce pmu_event_filter_test >> KVM: selftests: aarch64: Add invalid filter test in >> pmu_event_filter_test >> >> tools/testing/selftests/kvm/Makefile | 2 + >> .../kvm/aarch64/pmu_event_filter_test.c | 255 ++++++++++++++++++ >> .../kvm/aarch64/vpmu_counter_access.c | 218 ++------------- >> .../selftests/kvm/include/aarch64/vpmu.h | 135 ++++++++++ >> .../testing/selftests/kvm/lib/aarch64/vpmu.c | 74 +++++ >> 5 files changed, 490 insertions(+), 194 deletions(-) >> create mode 100644 tools/testing/selftests/kvm/aarch64/pmu_event_filter_test.c >> create mode 100644 tools/testing/selftests/kvm/include/aarch64/vpmu.h >> create mode 100644 tools/testing/selftests/kvm/lib/aarch64/vpmu.c >> >