]> git.baikalelectronics.ru Git - kernel.git/commitdiff
selftests: Move kselftest_module.sh into kselftest/
authorKees Cook <keescook@chromium.org>
Wed, 30 Oct 2019 19:45:36 +0000 (12:45 -0700)
committerShuah Khan <skhan@linuxfoundation.org>
Thu, 7 Nov 2019 21:46:08 +0000 (14:46 -0700)
The kselftest_module.sh file was not being installed by the Makefile
"install" target, rendering the lib/*.sh tests nonfunction. This fixes
that and takes the opportunity to move it into the kselftest/ subdirectory
which is where the kselftest infrastructure bits are collecting.

Reported-by: Naresh Kamboju <naresh.kamboju@linaro.org>
Link: https://lore.kernel.org/lkml/CA+G9fYsfJpXQvOvHdjtg8z4a89dSStOQZOKa9zMjjQgWKng1aw@mail.gmail.com
Fixes: 931616a4a5fa ("kselftest: Add test runner creation script")
Signed-off-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Shuah Khan <skhan@linuxfoundation.org>
tools/testing/selftests/Makefile
tools/testing/selftests/kselftest/module.sh [new file with mode: 0755]
tools/testing/selftests/kselftest_module.sh [deleted file]
tools/testing/selftests/lib/bitmap.sh
tools/testing/selftests/lib/prime_numbers.sh
tools/testing/selftests/lib/printf.sh
tools/testing/selftests/lib/strscpy.sh

index 3405aa26a655ac2cc15384e2b9db184b17464375..68abfed9bc8b28dcece54e991dabacc65041ad6f 100644 (file)
@@ -191,6 +191,7 @@ install: all
 ifdef INSTALL_PATH
        @# Ask all targets to install their files
        mkdir -p $(INSTALL_PATH)/kselftest
+       install -m 744 kselftest/module.sh $(INSTALL_PATH)/kselftest/
        install -m 744 kselftest/runner.sh $(INSTALL_PATH)/kselftest/
        install -m 744 kselftest/prefix.pl $(INSTALL_PATH)/kselftest/
        @for TARGET in $(TARGETS); do \
diff --git a/tools/testing/selftests/kselftest/module.sh b/tools/testing/selftests/kselftest/module.sh
new file mode 100755 (executable)
index 0000000..18e1c79
--- /dev/null
@@ -0,0 +1,84 @@
+#!/bin/sh
+# SPDX-License-Identifier: GPL-2.0+
+
+#
+# Runs an individual test module.
+#
+# kselftest expects a separate executable for each test, this can be
+# created by adding a script like this:
+#
+#   #!/bin/sh
+#   SPDX-License-Identifier: GPL-2.0+
+#   $(dirname $0)/../kselftest_module.sh "description" module_name
+#
+# Example: tools/testing/selftests/lib/printf.sh
+
+desc=""                                # Output prefix.
+module=""                      # Filename (without the .ko).
+args=""                                # modprobe arguments.
+
+modprobe="/sbin/modprobe"
+
+main() {
+    parse_args "$@"
+    assert_root
+    assert_have_module
+    run_module
+}
+
+parse_args() {
+    script=${0##*/}
+
+    if [ $# -lt 2 ]; then
+       echo "Usage: $script <description> <module_name> [FAIL]"
+       exit 1
+    fi
+
+    desc="$1"
+    shift || true
+    module="$1"
+    shift || true
+    args="$@"
+}
+
+assert_root() {
+    if [ ! -w /dev ]; then
+       skip "please run as root"
+    fi
+}
+
+assert_have_module() {
+    if ! $modprobe -q -n $module; then
+       skip "module $module is not found"
+    fi
+}
+
+run_module() {
+    if $modprobe -q $module $args; then
+       $modprobe -q -r $module
+       say "ok"
+    else
+       fail ""
+    fi
+}
+
+say() {
+    echo "$desc: $1"
+}
+
+
+fail() {
+    say "$1 [FAIL]" >&2
+    exit 1
+}
+
+skip() {
+    say "$1 [SKIP]" >&2
+    # Kselftest framework requirement - SKIP code is 4.
+    exit 4
+}
+
+#
+# Main script
+#
+main "$@"
diff --git a/tools/testing/selftests/kselftest_module.sh b/tools/testing/selftests/kselftest_module.sh
deleted file mode 100755 (executable)
index 18e1c79..0000000
+++ /dev/null
@@ -1,84 +0,0 @@
-#!/bin/sh
-# SPDX-License-Identifier: GPL-2.0+
-
-#
-# Runs an individual test module.
-#
-# kselftest expects a separate executable for each test, this can be
-# created by adding a script like this:
-#
-#   #!/bin/sh
-#   SPDX-License-Identifier: GPL-2.0+
-#   $(dirname $0)/../kselftest_module.sh "description" module_name
-#
-# Example: tools/testing/selftests/lib/printf.sh
-
-desc=""                                # Output prefix.
-module=""                      # Filename (without the .ko).
-args=""                                # modprobe arguments.
-
-modprobe="/sbin/modprobe"
-
-main() {
-    parse_args "$@"
-    assert_root
-    assert_have_module
-    run_module
-}
-
-parse_args() {
-    script=${0##*/}
-
-    if [ $# -lt 2 ]; then
-       echo "Usage: $script <description> <module_name> [FAIL]"
-       exit 1
-    fi
-
-    desc="$1"
-    shift || true
-    module="$1"
-    shift || true
-    args="$@"
-}
-
-assert_root() {
-    if [ ! -w /dev ]; then
-       skip "please run as root"
-    fi
-}
-
-assert_have_module() {
-    if ! $modprobe -q -n $module; then
-       skip "module $module is not found"
-    fi
-}
-
-run_module() {
-    if $modprobe -q $module $args; then
-       $modprobe -q -r $module
-       say "ok"
-    else
-       fail ""
-    fi
-}
-
-say() {
-    echo "$desc: $1"
-}
-
-
-fail() {
-    say "$1 [FAIL]" >&2
-    exit 1
-}
-
-skip() {
-    say "$1 [SKIP]" >&2
-    # Kselftest framework requirement - SKIP code is 4.
-    exit 4
-}
-
-#
-# Main script
-#
-main "$@"
index 5511dddc5c2daf55cade85a4302a2e6e292c1e6d..00a416fbc0ef069d724196aa67a5c1ff34aa50c6 100755 (executable)
@@ -1,3 +1,3 @@
 #!/bin/sh
 # SPDX-License-Identifier: GPL-2.0
-$(dirname $0)/../kselftest_module.sh "bitmap" test_bitmap
+$(dirname $0)/../kselftest/module.sh "bitmap" test_bitmap
index 43b28f24e453d63880a7c011dc0585b10503dd91..370b79a9cb2e9a5f4dd0d9a3f69e3d702a7d2d8d 100755 (executable)
@@ -1,4 +1,4 @@
 #!/bin/sh
 # SPDX-License-Identifier: GPL-2.0
 # Checks fast/slow prime_number generation for inconsistencies
-$(dirname $0)/../kselftest_module.sh "prime numbers" prime_numbers selftest=65536
+$(dirname $0)/../kselftest/module.sh "prime numbers" prime_numbers selftest=65536
index 2ffa61da0296e7ba866bbded157be60d8b3190dc..05f4544e87f9c2931bbbac27a2ad1352e4604c76 100755 (executable)
@@ -1,4 +1,4 @@
 #!/bin/sh
 # SPDX-License-Identifier: GPL-2.0
 # Tests the printf infrastructure using test_printf kernel module.
-$(dirname $0)/../kselftest_module.sh "printf" test_printf
+$(dirname $0)/../kselftest/module.sh "printf" test_printf
index 71f2be6afba6419cea94b8c95146a90f26e5d9b3..be60ef6e1a7fbe3fa2461f94800d56cabdcf9b63 100755 (executable)
@@ -1,3 +1,3 @@
 #!/bin/sh
 # SPDX-License-Identifier: GPL-2.0+
-$(dirname $0)/../kselftest_module.sh "strscpy*" test_strscpy
+$(dirname $0)/../kselftest/module.sh "strscpy*" test_strscpy