This patch can track these counters in each namespace and check if they
don't have unexpected values in tests.
Signed-off-by: Gang Yan <yangang@kylinos.cn>
---
tools/testing/selftests/net/mptcp/mptcp_join.sh | 17 +++++++++++++++++
1 file changed, 17 insertions(+)
diff --git a/tools/testing/selftests/net/mptcp/mptcp_join.sh b/tools/testing/selftests/net/mptcp/mptcp_join.sh
index 2c1f0704bc17..ac9e9d4fed59 100755
--- a/tools/testing/selftests/net/mptcp/mptcp_join.sh
+++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh
@@ -74,6 +74,8 @@ unset join_create_err
unset join_bind_err
unset join_connect_err
+unset ns1_fb
+unset ns2_fb
unset infinite_map_tx_fb
unset dss_corruption_fb
unset simult_conn_fb
@@ -1582,6 +1584,20 @@ chk_join_nr()
join_syn_tx="${join_syn_tx:-${syn_nr}}" \
chk_join_tx_nr
+ if [[ -n "$ns1_fb" ]]; then
+ eval "$ns1_fb" \
+ chk_fallback_nr ${ns1}
+ else
+ chk_fallback_nr ${ns1}
+ fi
+
+ if [[ -n "$ns2_fb" ]]; then
+ eval "$ns2_fb" \
+ chk_fallback_nr ${ns2}
+ else
+ chk_fallback_nr ${ns2}
+ fi
+
if $validate_checksum; then
chk_csum_nr $csum_ns1 $csum_ns2
chk_fail_nr $fail_nr $fail_nr
@@ -3435,6 +3451,7 @@ fail_tests()
join_csum_ns1=+1 join_csum_ns2=+0 \
join_fail_nr=1 join_rst_nr=0 join_infi_nr=1 \
join_corrupted_pkts="$(pedit_action_pkts)" \
+ ns1_fb="dss_fb=1" ns2_fb="infinite_map_tx_fb=1" \
chk_join_nr 0 0 0
chk_fail_nr 1 -1 invert
fi
--
2.43.0
On 14/08/2025 05:16, Gang Yan wrote: > This patch can track these counters in each namespace and check if they > don't have unexpected values in tests. > > Signed-off-by: Gang Yan <yangang@kylinos.cn> > --- > tools/testing/selftests/net/mptcp/mptcp_join.sh | 17 +++++++++++++++++ > 1 file changed, 17 insertions(+) > > diff --git a/tools/testing/selftests/net/mptcp/mptcp_join.sh b/tools/testing/selftests/net/mptcp/mptcp_join.sh > index 2c1f0704bc17..ac9e9d4fed59 100755 > --- a/tools/testing/selftests/net/mptcp/mptcp_join.sh > +++ b/tools/testing/selftests/net/mptcp/mptcp_join.sh > @@ -74,6 +74,8 @@ unset join_create_err > unset join_bind_err > unset join_connect_err > > +unset ns1_fb > +unset ns2_fb > unset infinite_map_tx_fb > unset dss_corruption_fb > unset simult_conn_fb > @@ -1582,6 +1584,20 @@ chk_join_nr() > join_syn_tx="${join_syn_tx:-${syn_nr}}" \ > chk_join_tx_nr > > + if [[ -n "$ns1_fb" ]]; then Detail: you can use simple [], like in most places in this file. > + eval "$ns1_fb" \ > + chk_fallback_nr ${ns1} > + else > + chk_fallback_nr ${ns1} > + fi > + > + if [[ -n "$ns2_fb" ]]; then Same here for simple []. > + eval "$ns2_fb" \ > + chk_fallback_nr ${ns2} > + else > + chk_fallback_nr ${ns2} > + fi This will print this for each test: # check fallback nr [ OK ] # check fallback nr [ OK ] Not pretty... Also, it might be confusing to have all these "fallback" lines when we don't expect any fallbacks. What about printing it only in case of error? (or only once? but still confusing / not worth it when printed for all tests?) You could have another helper containing the code here above, and instead: rc=${KSFT_PASS} chk_fallback_nr_all || rc=${?} if [ "$rc" != "${KSFT_PASS}" ]; then print_results "fallback" ${rc} fi > + > if $validate_checksum; then > chk_csum_nr $csum_ns1 $csum_ns2 > chk_fail_nr $fail_nr $fail_nr > @@ -3435,6 +3451,7 @@ fail_tests() > join_csum_ns1=+1 join_csum_ns2=+0 \ > join_fail_nr=1 join_rst_nr=0 join_infi_nr=1 \ > join_corrupted_pkts="$(pedit_action_pkts)" \ > + ns1_fb="dss_fb=1" ns2_fb="infinite_map_tx_fb=1" \ > chk_join_nr 0 0 0 > chk_fail_nr 1 -1 invert > fi Cheers, Matt -- Sponsored by the NGI0 Core fund.
© 2016 - 2025 Red Hat, Inc.