kselftest/arm64: signal: Add SME signal handling tests
authorMark Brown <broonie@kernel.org>
Tue, 19 Apr 2022 11:22:43 +0000 (12:22 +0100)
committerCatalin Marinas <catalin.marinas@arm.com>
Thu, 28 Apr 2022 16:57:12 +0000 (17:57 +0100)
commit4963aeb35a9edca90f062885b0d78c47a00c1752
treeb40b0390286d026cca11cd2e5d162469174f6edc
parent5aa45cc5355db3f5302e232a0fe29759ace4bc92
kselftest/arm64: signal: Add SME signal handling tests

Add test cases for the SME signal handing ABI patterned off the SVE tests.
Due to the small size of the tests and the differences in ABI (especially
around needing to account for both streaming SVE and ZA) there is some code
duplication here.

We currently cover:
 - Reporting of the vector length.
 - Lack of support for changing vector length.
 - Presence and size of register state for streaming SVE and ZA.

As with the SVE tests we do not yet have any validation of register
contents.

Signed-off-by: Mark Brown <broonie@kernel.org>
Reviewed-by: Shuah Khan <skhan@linuxfoundation.org>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/20220419112247.711548-36-broonie@kernel.org
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
tools/testing/selftests/arm64/signal/.gitignore
tools/testing/selftests/arm64/signal/test_signals.h
tools/testing/selftests/arm64/signal/test_signals_utils.c
tools/testing/selftests/arm64/signal/testcases/fake_sigreturn_sme_change_vl.c [new file with mode: 0644]
tools/testing/selftests/arm64/signal/testcases/sme_trap_no_sm.c [new file with mode: 0644]
tools/testing/selftests/arm64/signal/testcases/sme_trap_non_streaming.c [new file with mode: 0644]
tools/testing/selftests/arm64/signal/testcases/sme_trap_za.c [new file with mode: 0644]
tools/testing/selftests/arm64/signal/testcases/sme_vl.c [new file with mode: 0644]
tools/testing/selftests/arm64/signal/testcases/ssve_regs.c [new file with mode: 0644]
tools/testing/selftests/arm64/signal/testcases/za_regs.c [new file with mode: 0644]