]> www.infradead.org Git - users/hch/misc.git/commitdiff
selftests: mptcp: sockopt: save nstat infos
authorGeliang Tang <tanggeliang@kylinos.cn>
Tue, 14 Jan 2025 18:03:12 +0000 (19:03 +0100)
committerJakub Kicinski <kuba@kernel.org>
Wed, 15 Jan 2025 21:21:14 +0000 (13:21 -0800)
Similar to the way nstat information is stored in mptcp_connect.sh
and mptcp_join.sh scripts, this patch adds a similar way for
mptcp_sockopt.sh and displays the nstat information when errors
occur.

Signed-off-by: Geliang Tang <tanggeliang@kylinos.cn>
Reviewed-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Link: https://patch.msgid.link/20250114-net-next-mptcp-st-more-debug-err-v1-2-2ffb16a6cf35@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
tools/testing/selftests/net/mptcp/mptcp_sockopt.sh

index 5e8d5b83e2d092879efc179f1a450542be4e575e..9a78bfdc3d5e27fdf6859d34f8d313bd08dd4457 100755 (executable)
@@ -169,6 +169,11 @@ do_transfer()
                cmsg+=",TCPINQ"
        fi
 
+       NSTAT_HISTORY=/tmp/${listener_ns}.nstat ip netns exec ${listener_ns} \
+               nstat -n
+       NSTAT_HISTORY=/tmp/${connector_ns}.nstat ip netns exec ${connector_ns} \
+               nstat -n
+
        timeout ${timeout_test} \
                ip netns exec ${listener_ns} \
                        $mptcp_connect -t ${timeout_poll} -l -M 1 -p $port -s ${srv_proto} -c "${cmsg}" \
@@ -189,14 +194,20 @@ do_transfer()
        wait $spid
        local rets=$?
 
+       NSTAT_HISTORY=/tmp/${listener_ns}.nstat ip netns exec ${listener_ns} \
+               nstat | grep Tcp > /tmp/${listener_ns}.out
+       NSTAT_HISTORY=/tmp/${connector_ns}.nstat ip netns exec ${connector_ns} \
+               nstat | grep Tcp > /tmp/${connector_ns}.out
+
        print_title "Transfer ${ip:2}"
        if [ ${rets} -ne 0 ] || [ ${retc} -ne 0 ]; then
                mptcp_lib_pr_fail "client exit code $retc, server $rets"
                echo -e "\nnetns ${listener_ns} socket stat for ${port}:" 1>&2
                ip netns exec ${listener_ns} ss -Menita 1>&2 -o "sport = :$port"
-
+               cat /tmp/${listener_ns}.out
                echo -e "\nnetns ${connector_ns} socket stat for ${port}:" 1>&2
                ip netns exec ${connector_ns} ss -Menita 1>&2 -o "dport = :$port"
+               cat /tmp/${connector_ns}.out
 
                mptcp_lib_result_fail "transfer ${ip}"