Skip to content

Commit 756d18d

Browse files
committed
check: call _unload_modules for each test run
Currently, the check script calls _unload_modules() once per test case. However, when a test case has set_conditions(), the test case is executed multiple times, once for each specified condition. Despite these multiple execution, _unload_modules() is called only once after all the runs for various conditions have been completed. This behavior causes module unload problems. When a run leaves some modules loaded, subsequent runs can be affected by the loaded modules. To prevent such problems, call _unload_modules() for each test case run for every condition. Fixes: fb3ba92 ("check: support test case repeat by different conditions") Reviewed-by: Daniel Wagner <[email protected]> Signed-off-by: Shin'ichiro Kawasaki <[email protected]>
1 parent 55045b0 commit 756d18d

1 file changed

Lines changed: 12 additions & 3 deletions

File tree

check

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -416,7 +416,7 @@ _cleanup() {
416416
_exit_cgroup2
417417
}
418418

419-
_call_test() {
419+
__call_test() {
420420
local test_func="$1"
421421
local seqres="${RESULTS_DIR}/${TEST_NAME}"
422422
# shellcheck disable=SC2034
@@ -536,6 +536,17 @@ _call_test() {
536536
fi
537537
}
538538

539+
_call_test() {
540+
local ret
541+
542+
__call_test "$@"
543+
ret=$?
544+
545+
_unload_modules
546+
547+
return $ret
548+
}
549+
539550
_test_dev_is_zoned() {
540551
[[ -e "${TEST_DEV_SYSFS}/queue/zoned" &&
541552
$(cat "${TEST_DEV_SYSFS}/queue/zoned") != none ]]
@@ -887,8 +898,6 @@ _run_test() {
887898
ret=$?
888899
fi
889900
890-
_unload_modules
891-
892901
return $ret
893902
}
894903

0 commit comments

Comments
 (0)