On Mon, May 31, 2021 at 12:33:39PM +0200, Andrew Jones wrote:
> v3:
> - Took Ricardo's suggestions in order to avoid needing to update
> prepare_vcpu_init, finalize_vcpu, and check_supported when adding
> new register sublists by better associating the sublists with their
> vcpu feature bits and caps [Ricardo]
> - We now dynamically generate the vcpu config name by creating them
> from its sublist names [drew]
>
> v2:
> - Removed some cruft left over from a previous more complex design of the
> config command line parser
> - Dropped the list printing factor out patch as it's not necessary
> - Added a 'PASS' output for passing tests to allow testers to feel good
> - Changed the "up to date with kernel" comment to reference 5.13.0-rc2
>
>
> Since KVM commit 11663111cd49 ("KVM: arm64: Hide PMU registers from
> userspace when not available") the get-reg-list* tests have been
> failing with
>
> ...
> ... There are 74 missing registers.
> The following lines are missing registers:
> ...
>
> where the 74 missing registers are all PMU registers. This isn't a
> bug in KVM that the selftest found, even though it's true that a
> KVM userspace that wasn't setting the KVM_ARM_VCPU_PMU_V3 VCPU
> flag, but still expecting the PMU registers to be in the reg-list,
> would suddenly no longer have their expectations met. In that case,
> the expectations were wrong, though, so that KVM userspace needs to
> be fixed, and so does this selftest.
>
> We could fix the test with a one-liner since we just need a
>
> init->features[0] |= 1 << KVM_ARM_VCPU_PMU_V3;
>
> in prepare_vcpu_init(), but that's too easy, so here's a 5 patch patch
> series instead :-) The reason for all the patches and the heavy diffstat
> is to prepare for other vcpu configuration testing, e.g. ptrauth and mte.
> With the refactoring done in this series, we should now be able to easily
> add register sublists and vcpu configs to the get-reg-list test, as the
> last patch demonstrates with the pmu fix.
>
> Thanks,
> drew
>
>
> Andrew Jones (5):
> KVM: arm64: selftests: get-reg-list: Introduce vcpu configs
> KVM: arm64: selftests: get-reg-list: Prepare to run multiple configs
> at once
> KVM: arm64: selftests: get-reg-list: Provide config selection option
> KVM: arm64: selftests: get-reg-list: Remove get-reg-list-sve
> KVM: arm64: selftests: get-reg-list: Split base and pmu registers
>
> tools/testing/selftests/kvm/.gitignore | 1 -
> tools/testing/selftests/kvm/Makefile | 1 -
> .../selftests/kvm/aarch64/get-reg-list-sve.c | 3 -
> .../selftests/kvm/aarch64/get-reg-list.c | 439 +++++++++++++-----
> 4 files changed, 321 insertions(+), 123 deletions(-)
> delete mode 100644 tools/testing/selftests/kvm/aarch64/get-reg-list-sve.c
>
> --
> 2.31.1
>
Gentle ping.
I'm not sure if I'm pinging Marc or Paolo though. MAINTAINERS shows Paolo
as all kvm selftests, but I think Marc has started picking up the AArch64
specific kvm selftests.
Marc, if you've decided to maintain AArch64 kvm selftests, would you be
opposed to adding
F: tools/testing/selftests/kvm/*/aarch64/
F: tools/testing/selftests/kvm/aarch64/
to "KERNEL VIRTUAL MACHINE FOR ARM64 (KVM/arm64)"?
Thanks,
drew
_______________________________________________
kvmarm mailing list
[email protected]
https://lists.cs.columbia.edu/mailman/listinfo/kvmarm