In order to unify what is printed in case of error, similar to what is
done in mptcp_connect.sh and mptcp_join.sh, it is interesting to do the
following modifications in simult_flows.sh:

- Print the rc errors at the end of the line.

- Print the MIB counters.

- Use the same ss options: add -M (MPTCP sockets) and -e (detailed
  socket information).

While at it, also print of the 'max' time only in case of success,
because 'mptcp_connect.c' will already print this info in case of error,
e.g.:

  transfer slower than expected! runtime 11948 ms, expected 11921 ms

Reviewed-by: Geliang Tang <geli...@kernel.org>
Signed-off-by: Matthieu Baerts (NGI0) <matt...@kernel.org>
---
 tools/testing/selftests/net/mptcp/simult_flows.sh | 21 ++++++++++++++++-----
 1 file changed, 16 insertions(+), 5 deletions(-)

diff --git a/tools/testing/selftests/net/mptcp/simult_flows.sh 
b/tools/testing/selftests/net/mptcp/simult_flows.sh
index 
8fa77c8e9b651171a34c89bfd5c9ded0288a5bde..e98e5907d52c2d0e9c0152efda82176861905cf1
 100755
--- a/tools/testing/selftests/net/mptcp/simult_flows.sh
+++ b/tools/testing/selftests/net/mptcp/simult_flows.sh
@@ -155,6 +155,11 @@ do_transfer()
                sleep 1
        fi
 
+       NSTAT_HISTORY=/tmp/${ns3}.nstat ip netns exec ${ns3} \
+               nstat -n
+       NSTAT_HISTORY=/tmp/${ns1}.nstat ip netns exec ${ns1} \
+               nstat -n
+
        timeout ${timeout_test} \
                ip netns exec ${ns3} \
                        ./mptcp_connect -jt ${timeout_poll} -l -p $port -T 
$max_time \
@@ -180,25 +185,31 @@ do_transfer()
                kill ${cappid_connector}
        fi
 
+       NSTAT_HISTORY=/tmp/${ns3}.nstat ip netns exec ${ns3} \
+               nstat | grep Tcp > /tmp/${ns3}.out
+       NSTAT_HISTORY=/tmp/${ns1}.nstat ip netns exec ${ns1} \
+               nstat | grep Tcp > /tmp/${ns1}.out
+
        cmp $sin $cout > /dev/null 2>&1
        local cmps=$?
        cmp $cin $sout > /dev/null 2>&1
        local cmpc=$?
 
-       printf "%-16s" " max $max_time "
        if [ $retc -eq 0 ] && [ $rets -eq 0 ] && \
           [ $cmpc -eq 0 ] && [ $cmps -eq 0 ]; then
+               printf "%-16s" " max $max_time "
                mptcp_lib_pr_ok
                cat "$capout"
                return 0
        fi
 
-       mptcp_lib_pr_fail
-       echo "client exit code $retc, server $rets" 1>&2
+       mptcp_lib_pr_fail "client exit code $retc, server $rets"
        echo -e "\nnetns ${ns3} socket stat for $port:" 1>&2
-       ip netns exec ${ns3} ss -nita 1>&2 -o "sport = :$port"
+       ip netns exec ${ns3} ss -Menita 1>&2 -o "sport = :$port"
+       cat /tmp/${ns3}.out
        echo -e "\nnetns ${ns1} socket stat for $port:" 1>&2
-       ip netns exec ${ns1} ss -nita 1>&2 -o "dport = :$port"
+       ip netns exec ${ns1} ss -Menita 1>&2 -o "dport = :$port"
+       cat /tmp/${ns1}.out
        ls -l $sin $cout
        ls -l $cin $sout
 

-- 
2.47.1


Reply via email to