Commit 95cf3f23 authored by Mark Brown's avatar Mark Brown Committed by Catalin Marinas

kselftest/arm64: Add tests for SVE vector configuration

We provide interfaces for configuring the SVE vector length seen by
processes using prctl and also via /proc for configuring the default
values. Provide tests that exercise all these interfaces and verify that
they take effect as expected, though at present no test fully enumerates
all the possible vector lengths.

A subset of this is already tested via sve-probe-vls but the /proc
interfaces are not currently covered at all.

In preparation for the forthcoming support for SME, the Scalable Matrix
Extension, which has separately but similarly configured vector lengths
which we expect to offer similar userspace interfaces for, all the actual
files and prctls used are parameterised and we don't validate that the
architectural minimum vector length is the minimum we see.
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
Reviewed-by: default avatarDave Martin <Dave.Martin@arm.com>
Link: https://lore.kernel.org/r/20210803140450.46624-4-broonie@kernel.orgSigned-off-by: default avatarCatalin Marinas <catalin.marinas@arm.com>
parent b43ab36a
...@@ -3,4 +3,5 @@ rdvl-sve ...@@ -3,4 +3,5 @@ rdvl-sve
sve-probe-vls sve-probe-vls
sve-ptrace sve-ptrace
sve-test sve-test
vec-syscfg
vlset vlset
# SPDX-License-Identifier: GPL-2.0 # SPDX-License-Identifier: GPL-2.0
CFLAGS += -I../../../../../usr/include/ CFLAGS += -I../../../../../usr/include/
TEST_GEN_PROGS := sve-ptrace sve-probe-vls TEST_GEN_PROGS := sve-ptrace sve-probe-vls vec-syscfg
TEST_PROGS_EXTENDED := fpsimd-test fpsimd-stress \ TEST_PROGS_EXTENDED := fpsimd-test fpsimd-stress \
rdvl-sve \ rdvl-sve \
sve-test sve-stress \ sve-test sve-stress \
...@@ -16,6 +16,7 @@ sve-ptrace: sve-ptrace.o sve-ptrace-asm.o ...@@ -16,6 +16,7 @@ sve-ptrace: sve-ptrace.o sve-ptrace-asm.o
sve-probe-vls: sve-probe-vls.o rdvl.o sve-probe-vls: sve-probe-vls.o rdvl.o
sve-test: sve-test.o sve-test: sve-test.o
$(CC) -nostdlib $^ -o $@ $(CC) -nostdlib $^ -o $@
vec-syscfg: vec-syscfg.o rdvl.o
vlset: vlset.o vlset: vlset.o
include ../../lib.mk include ../../lib.mk
This diff is collapsed.
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