aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/tools/testing/selftests/arm64/mte
diff options
context:
space:
mode:
authorMark Brown <broonie@kernel.org>2022-04-19 11:32:40 +0100
committerCatalin Marinas <catalin.marinas@arm.com>2022-04-28 17:57:10 +0100
commit3f374d7972c48bc0824bdabb8f94fe82e54fd07d (patch)
treef2d5b7af0adceeab978d30c9b21067a1ee0191f3 /tools/testing/selftests/arm64/mte
parentkselftest/arm64: Validate setting via FPSIMD and read via SVE regsets (diff)
downloadwireguard-linux-3f374d7972c48bc0824bdabb8f94fe82e54fd07d.tar.xz
wireguard-linux-3f374d7972c48bc0824bdabb8f94fe82e54fd07d.zip
kselftest/arm64: Handle more kselftest result codes in MTE helpers
The MTE selftests have a helper evaluate_test() which translates a return code into a call to ksft_test_result_*(). Currently this only handles pass and fail, silently ignoring any other code. Update the helper to support skipped tests and log any unknown return codes as an error so we get at least some diagnostic if anything goes wrong. Signed-off-by: Mark Brown <broonie@kernel.org> Reviewed-by: Shuah Khan <skhan@linuxfoundation.org> Link: https://lore.kernel.org/r/20220419103243.24774-2-broonie@kernel.org Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'tools/testing/selftests/arm64/mte')
-rw-r--r--tools/testing/selftests/arm64/mte/mte_common_util.h15
1 files changed, 13 insertions, 2 deletions
diff --git a/tools/testing/selftests/arm64/mte/mte_common_util.h b/tools/testing/selftests/arm64/mte/mte_common_util.h
index 195a7d1879e6..2d3e71724e55 100644
--- a/tools/testing/selftests/arm64/mte/mte_common_util.h
+++ b/tools/testing/selftests/arm64/mte/mte_common_util.h
@@ -75,10 +75,21 @@ unsigned int mte_get_pstate_tco(void);
/* Test framework static inline functions/macros */
static inline void evaluate_test(int err, const char *msg)
{
- if (err == KSFT_PASS)
+ switch (err) {
+ case KSFT_PASS:
ksft_test_result_pass(msg);
- else if (err == KSFT_FAIL)
+ break;
+ case KSFT_FAIL:
ksft_test_result_fail(msg);
+ break;
+ case KSFT_SKIP:
+ ksft_test_result_skip(msg);
+ break;
+ default:
+ ksft_test_result_error("Unknown return code %d from %s",
+ err, msg);
+ break;
+ }
}
static inline int check_allocated_memory(void *ptr, size_t size,