summaryrefslogtreecommitdiffstats
path: root/tools/testing/selftests/user
diff options
context:
space:
mode:
authorShuah Khan (Samsung OSG) <shuah@kernel.org>2018-06-14 05:10:48 +0200
committerShuah Khan (Samsung OSG) <shuah@kernel.org>2018-06-18 17:11:09 +0200
commitd7d5311d4aa9611fe1a5a851e6f75733237a668a (patch)
treedd99d3039d4c3cf0044bdccade93d65b89209732 /tools/testing/selftests/user
parentselftests: sysctl: return Kselftest Skip code for skipped tests (diff)
downloadlinux-d7d5311d4aa9611fe1a5a851e6f75733237a668a.tar.xz
linux-d7d5311d4aa9611fe1a5a851e6f75733237a668a.zip
selftests: user: return Kselftest Skip code for skipped tests
When user test is skipped because of unmet dependencies and/or unsupported configuration, it exits with error which is treated as a fail by the Kselftest framework. This leads to false negative result even when the test could not be run. Change it to return kselftest skip code when a test gets skipped to clearly report that the test could not be run. Add an explicit check for module presence and return skip code if module isn't present. Kselftest framework SKIP code is 4 and the framework prints appropriate messages to indicate that the test is skipped. Signed-off-by: Shuah Khan (Samsung OSG) <shuah@kernel.org>
Diffstat (limited to 'tools/testing/selftests/user')
-rwxr-xr-xtools/testing/selftests/user/test_user_copy.sh7
1 files changed, 7 insertions, 0 deletions
diff --git a/tools/testing/selftests/user/test_user_copy.sh b/tools/testing/selftests/user/test_user_copy.sh
index d60506fc77f8..f9b31a57439b 100755
--- a/tools/testing/selftests/user/test_user_copy.sh
+++ b/tools/testing/selftests/user/test_user_copy.sh
@@ -2,6 +2,13 @@
# SPDX-License-Identifier: GPL-2.0
# Runs copy_to/from_user infrastructure using test_user_copy kernel module
+# Kselftest framework requirement - SKIP code is 4.
+ksft_skip=4
+
+if ! /sbin/modprobe -q -n test_user_copy; then
+ echo "user: module test_user_copy is not found [SKIP]"
+ exit $ksft_skip
+fi
if /sbin/modprobe -q test_user_copy; then
/sbin/modprobe -q -r test_user_copy
echo "user_copy: ok"