summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@linux.dev>2024-10-31 01:47:35 -0400
committerKent Overstreet <kent.overstreet@linux.dev>2024-11-07 16:08:37 -0500
commit6a60cfc17d092bf65c3a5ed8d1cb13eaf616fee2 (patch)
tree51e839d47281787bca5d760732ed0d5cd2db303f
parent7b0ddbbfa7720046ecf163cfd75c0d3733c3243b (diff)
Allow for tests where we don't know the actual list of tests
This will be used for syzbot-repro.ktest, which will take as an argument a syzbot reproducer to download and run. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
-rw-r--r--lib/parse-test.sh16
-rwxr-xr-xlib/testrunner2
-rw-r--r--tests/prelude.sh2
3 files changed, 12 insertions, 8 deletions
diff --git a/lib/parse-test.sh b/lib/parse-test.sh
index 419cf57..42a476e 100644
--- a/lib/parse-test.sh
+++ b/lib/parse-test.sh
@@ -18,7 +18,7 @@ parse_test_deps()
ktest_tests=$("$ktest_test" list-tests)
ktest_tests=$(echo $ktest_tests)
- if [[ -z $ktest_tests ]]; then
+ if [[ -z $ktest_tests ]] && ! $ktest_tests_unknown; then
echo "No tests found"
echo "TEST FAILED"
exit 1
@@ -28,12 +28,14 @@ parse_test_deps()
# Ensure specified tests exist:
if [[ -n $ktest_testargs ]]; then
- for t in $ktest_testargs; do
- if ! echo "$ktest_tests"|grep -wq "$t"; then
- echo "Test $t not found"
- exit 1
- fi
- done
+ if ! $ktest_tests_unknown; then
+ for t in $ktest_testargs; do
+ if ! echo "$ktest_tests"|grep -wq "$t"; then
+ echo "Test $t not found"
+ exit 1
+ fi
+ done
+ fi
ktest_tests="$ktest_testargs"
fi
diff --git a/lib/testrunner b/lib/testrunner
index a7de937..fae4c85 100755
--- a/lib/testrunner
+++ b/lib/testrunner
@@ -156,7 +156,7 @@ do_reboot()
echo -n "Kernel version: "
uname -r
-if [[ -z $ktest_tests ]]; then
+if [[ -z $ktest_tests ]] && ! $ktest_tests_unknown; then
echo "No tests found"
echo "TEST FAILED"
exit 1
diff --git a/tests/prelude.sh b/tests/prelude.sh
index 22395df..b1bc878 100644
--- a/tests/prelude.sh
+++ b/tests/prelude.sh
@@ -35,6 +35,7 @@ if [[ ! -v ktest_cpus ]]; then
ktest_qemu_append=()
ktest_compiler=gcc
ktest_allow_taint=false
+ ktest_tests_unknown=false
BUILD_ON_HOST=""
fi
@@ -353,6 +354,7 @@ main()
echo "ktest_kernel_config_require_soft=(${ktest_kernel_config_require_soft[@]})"
echo "ktest_qemu_append=(${ktest_qemu_append[@]})"
echo "ktest_allow_taint=$ktest_allow_taint"
+ echo "ktest_tests_unknown=$ktest_tests_unknown"
;;
init)
create_ktest_user