linux/tools/testing/selftests/arm64
Mark Brown e40422c94e kselftest/arm64: Validate signal ucontext in place
In handle_input_signal_copyctx() we use ASSERT_GOOD_CONTEXT() to validate
that the context we are saving meets expectations however we do this on
the saved copy rather than on the actual signal context passed in. This
breaks validation of EXTRA_CONTEXT since we attempt to validate the ABI
requirement that the additional space supplied is immediately after the
termination record in the standard context which will not be the case
after it has been copied to another location.

Fix this by doing the validation before we copy. Note that nothing actually
looks inside the EXTRA_CONTEXT at present.

Signed-off-by: Mark Brown <broonie@kernel.org>
Link: https://lore.kernel.org/r/20220829160703.874492-3-broonie@kernel.org
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
2022-09-07 14:25:46 +01:00
..
abi kselftest/arm64: Add simple hwcap validation 2022-09-06 18:30:42 +01:00
bti kselftest/arm64: Explicitly build no BTI tests with BTI disabled 2022-05-16 19:43:40 +01:00
fp kselftest/arm64: kselftest harness for FP stress tests 2022-09-07 14:25:45 +01:00
mte selftests: stop using KSFT_KHDR_INSTALL 2022-07-11 17:23:30 -06:00
pauth kselftest/arm64: pac: Fix skipping of tests on systems without PAC 2021-08-20 12:06:59 +01:00
signal kselftest/arm64: Validate signal ucontext in place 2022-09-07 14:25:46 +01:00
tags .gitignore: add SPDX License Identifier 2020-03-25 11:50:48 +01:00
Makefile kselftest/arm64: Fix ABI header directory location 2022-05-04 10:02:36 +01:00
README kselftest: arm64: extend toplevel skeleton Makefile 2019-11-08 11:10:30 +00:00

KSelfTest ARM64
===============

- These tests are arm64 specific and so not built or run but just skipped
  completely when env-variable ARCH is found to be different than 'arm64'
  and `uname -m` reports other than 'aarch64'.

- Holding true the above, ARM64 KSFT tests can be run within the KSelfTest
  framework using standard Linux top-level-makefile targets:

      $ make TARGETS=arm64 kselftest-clean
      $ make TARGETS=arm64 kselftest

      or

      $ make -C tools/testing/selftests TARGETS=arm64 \
		INSTALL_PATH=<your-installation-path> install

      or, alternatively, only specific arm64/ subtargets can be picked:

      $ make -C tools/testing/selftests TARGETS=arm64 ARM64_SUBTARGETS="tags signal" \
		INSTALL_PATH=<your-installation-path> install

   Further details on building and running KFST can be found in:
     Documentation/dev-tools/kselftest.rst