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/ which can be used by pmu_event_filter_test. Then implements the test itself. Shaoqin Huang (3): KVM: selftests: aarch64: Make the [create|destroy]_vpmu_vm() can be reused KVM: selftests: aarch64: Move the pmu helper function into lib/ KVM: selftests: aarch64: Introduce pmu_event_filter_test tools/testing/selftests/kvm/Makefile | 2 + .../kvm/aarch64/pmu_event_filter_test.c | 227 ++++++++++++++++++ .../kvm/aarch64/vpmu_counter_access.c | 218 ++--------------- .../selftests/kvm/include/aarch64/vpmu.h | 139 +++++++++++ .../testing/selftests/kvm/lib/aarch64/vpmu.c | 74 ++++++ 5 files changed, 466 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 -- 2.40.1