summaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorCristian Marussi <cristian.marussi@arm.com>2021-09-20 13:12:28 +0100
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2021-09-30 10:11:03 +0200
commit3aa50241e1eda27013e92d0db4f1b179e5cc33a6 (patch)
treef55d0b1ce298e3d41d80fbc5251e3af3c69446b9 /tools
parent91d4da33c3675b23aa47bbc421af07f18058dc5a (diff)
downloadlinux-stable-3aa50241e1eda27013e92d0db4f1b179e5cc33a6.tar.gz
linux-stable-3aa50241e1eda27013e92d0db4f1b179e5cc33a6.tar.bz2
linux-stable-3aa50241e1eda27013e92d0db4f1b179e5cc33a6.zip
kselftest/arm64: signal: Skip tests if required features are missing
[ Upstream commit 0e3dbf765fe22060acbcb8eb8c4d256e655a1247 ] During initialization of a signal testcase, features declared as required are properly checked against the running system but no action is then taken to effectively skip such a testcase. Fix core signals test logic to abort initialization and report such a testcase as skipped to the KSelfTest framework. Fixes: f96bf4340316 ("kselftest: arm64: mangle_pstate_invalid_compat_toggle and common utils") Signed-off-by: Cristian Marussi <cristian.marussi@arm.com> Reviewed-by: Mark Brown <broonie@kernel.org> Link: https://lore.kernel.org/r/20210920121228.35368-1-cristian.marussi@arm.com Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'tools')
-rw-r--r--tools/testing/selftests/arm64/signal/test_signals_utils.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/tools/testing/selftests/arm64/signal/test_signals_utils.c b/tools/testing/selftests/arm64/signal/test_signals_utils.c
index 6836510a522f..22722abc9dfa 100644
--- a/tools/testing/selftests/arm64/signal/test_signals_utils.c
+++ b/tools/testing/selftests/arm64/signal/test_signals_utils.c
@@ -266,16 +266,19 @@ int test_init(struct tdescr *td)
td->feats_supported |= FEAT_SSBS;
if (getauxval(AT_HWCAP) & HWCAP_SVE)
td->feats_supported |= FEAT_SVE;
- if (feats_ok(td))
+ if (feats_ok(td)) {
fprintf(stderr,
"Required Features: [%s] supported\n",
feats_to_string(td->feats_required &
td->feats_supported));
- else
+ } else {
fprintf(stderr,
"Required Features: [%s] NOT supported\n",
feats_to_string(td->feats_required &
~td->feats_supported));
+ td->result = KSFT_SKIP;
+ return 0;
+ }
}
/* Perform test specific additional initialization */