From: Hangbin Liu <[email protected]>

fdb_flush.sh, fib-onlink-tests.sh and l2tp.sh can print [FAIL]
subtests while still exiting with status 0. Their log_test(), aka
log_test_expected() in lib.sh, helpers record a failure in ret, but
the scripts never propagate ret to the exit code, so a kselftest runner
treats the run as a pass.

Initialize ret and exit with it at the end of each script so failed
subtests are reflected in the exit status.

Signed-off-by: Hangbin Liu <[email protected]>
---
The patch doesn't fix a regression, nothing is failing (or passing when it
shouldn't) because of it. So target the patch to net-next.
---
 tools/testing/selftests/net/fdb_flush.sh        | 3 +++
 tools/testing/selftests/net/fib-onlink-tests.sh | 3 +++
 tools/testing/selftests/net/l2tp.sh             | 3 +++
 3 files changed, 9 insertions(+)

diff --git a/tools/testing/selftests/net/fdb_flush.sh 
b/tools/testing/selftests/net/fdb_flush.sh
index 4965e52d5ef5..0827fdd60f8c 100755
--- a/tools/testing/selftests/net/fdb_flush.sh
+++ b/tools/testing/selftests/net/fdb_flush.sh
@@ -6,6 +6,7 @@
 # some combinations of arguments.
 
 source lib.sh
+ret=0
 
 FLUSH_BY_STATE_TESTS="
        vxlan_test_flush_by_permanent
@@ -778,3 +779,5 @@ for t in $TESTS
 do
        setup; $t; cleanup;
 done
+
+exit $ret
diff --git a/tools/testing/selftests/net/fib-onlink-tests.sh 
b/tools/testing/selftests/net/fib-onlink-tests.sh
index a26075abf7d2..325da693c918 100755
--- a/tools/testing/selftests/net/fib-onlink-tests.sh
+++ b/tools/testing/selftests/net/fib-onlink-tests.sh
@@ -6,6 +6,7 @@
 source lib.sh
 PAUSE_ON_FAIL=${PAUSE_ON_FAIL:=no}
 VERBOSE=0
+ret=0
 
 # Network interfaces
 # - odd in current namespace; even in peer ns
@@ -473,3 +474,5 @@ if [ "$TESTS" != "none" ]; then
        printf "\nTests passed: %3d\n" ${nsuccess}
        printf "Tests failed: %3d\n"   ${nfail}
 fi
+
+exit $ret
diff --git a/tools/testing/selftests/net/l2tp.sh 
b/tools/testing/selftests/net/l2tp.sh
index 41e8b19d1bd3..de4b5da2da1b 100755
--- a/tools/testing/selftests/net/l2tp.sh
+++ b/tools/testing/selftests/net/l2tp.sh
@@ -16,6 +16,7 @@
 source lib.sh
 VERBOSE=0
 PAUSE_ON_FAIL=no
+ret=0
 
 which ping6 > /dev/null 2>&1 && ping6=$(which ping6) || ping6=$(which ping)
 
@@ -357,3 +358,5 @@ cleanup
 
 printf "\nTests passed: %3d\n" ${nsuccess}
 printf "Tests failed: %3d\n"   ${nfail}
+
+exit $ret

---
base-commit: d8674294aefef02266c4d47ad10131f1bffbe534
change-id: 20261014-self_ret-83b030f32ba3

Best regards,
-- 
Hangbin Liu <[email protected]>


Reply via email to