kselftest/arm64: Add a test case for SVE VL changes with SME active
authorMark Brown <broonie@kernel.org>
Thu, 20 Jul 2023 18:38:59 +0000 (19:38 +0100)
committerWill Deacon <will@kernel.org>
Thu, 27 Jul 2023 15:52:05 +0000 (16:52 +0100)
commit0c7c237b1c35011ef0b8d30c1d5c20bc6ae7b69b
treed98f14100888f9a4dd1cf8abbee3f90f87190e01
parent6eaae198076080886b9e7d57f4ae06fa782f90ef
kselftest/arm64: Add a test case for SVE VL changes with SME active

We just fixed an issue where changing the SVE VL while SME was active could
result in us attempting to save the streaming mode SVE vectors without any
backing storage. Add a test case which provokes that issue, ideally we
should also verify that the contents of ZA are unaffected by any of what we
did.

Note that since we need to keep streaming mode enabled we can't use any
syscalls to trigger the issue, we have to sit in a loop in usersapce and
hope to be preempted. The chosen numbers trigger with defconfig on all the
virtual platforms for me, this won't be 100% on all systems but avoid an
overcomplicated test implementation.

Signed-off-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20230720-arm64-fix-sve-sme-vl-change-v2-2-8eea06b82d57@kernel.org
Signed-off-by: Will Deacon <will@kernel.org>
tools/testing/selftests/arm64/fp/vec-syscfg.c