Commit fa23100b authored by Mark Brown's avatar Mark Brown Committed by Catalin Marinas

kselftest/arm64: Add streaming SVE to SVE ptrace tests

In order to allow ptrace of streaming mode SVE registers we have added a
new regset for streaming mode which in isolation offers the same ABI as
regular SVE with a different vector type. Add this to the array of regsets
we handle, together with additional tests for the interoperation of the
two regsets.
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
Reviewed-by: default avatarShuah Khan <skhan@linuxfoundation.org>
Acked-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
Link: https://lore.kernel.org/r/20220419112247.711548-37-broonie@kernel.orgSigned-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
parent 4963aeb3
...@@ -26,6 +26,10 @@ ...@@ -26,6 +26,10 @@
#define NT_ARM_SVE 0x405 #define NT_ARM_SVE 0x405
#endif #endif
#ifndef NT_ARM_SSVE
#define NT_ARM_SSVE 0x40b
#endif
struct vec_type { struct vec_type {
const char *name; const char *name;
unsigned long hwcap_type; unsigned long hwcap_type;
...@@ -42,6 +46,13 @@ static const struct vec_type vec_types[] = { ...@@ -42,6 +46,13 @@ static const struct vec_type vec_types[] = {
.regset = NT_ARM_SVE, .regset = NT_ARM_SVE,
.prctl_set = PR_SVE_SET_VL, .prctl_set = PR_SVE_SET_VL,
}, },
{
.name = "Streaming SVE",
.hwcap_type = AT_HWCAP2,
.hwcap = HWCAP2_SME,
.regset = NT_ARM_SSVE,
.prctl_set = PR_SME_SET_VL,
},
}; };
#define VL_TESTS (((SVE_VQ_MAX - SVE_VQ_MIN) + 1) * 4) #define VL_TESTS (((SVE_VQ_MAX - SVE_VQ_MIN) + 1) * 4)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment