mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-09-28 05:12:49 +00:00
selftests: mptcp: display warnings on one line
Before we had this in case of SYN retransmissions: (...) # ns4 MPTCP -> ns2 (10.0.1.2:10034 ) MPTCP (duration 1201ms) [ OK ] # ns4 MPTCP -> ns2 (dead:beef:1::2:10035) MPTCP (duration 1242ms) [ OK ] # ns4 MPTCP -> ns2 (10.0.2.1:10036 ) MPTCP ns2-60143c00-cDZWo4 SYNRX: MPTCP -> MPTCP: expect 11, got # 13 # (duration 6221ms) [ OK ] # ns4 MPTCP -> ns2 (dead:beef:2::1:10037) MPTCP (duration 1427ms) [ OK ] # ns4 MPTCP -> ns3 (10.0.2.2:10038 ) MPTCP (duration 881ms) [ OK ] (...) Now we have: (...) # ns4 MPTCP -> ns2 (10.0.1.2:10034 ) MPTCP (duration 1201ms) [ OK ] # ns4 MPTCP -> ns2 (dead:beef:1::2:10035) MPTCP (duration 1242ms) [ OK ] # ns4 MPTCP -> ns2 (10.0.2.1:10036 ) MPTCP (duration 6221ms) [ OK ] WARN: SYNRX: expect 11, got 13 # ns4 MPTCP -> ns2 (dead:beef:2::1:10037) MPTCP (duration 1427ms) [ OK ] # ns4 MPTCP -> ns3 (10.0.2.2:10038 ) MPTCP (duration 881ms) [ OK ] (...) So we put everything on one line, keep the durations and "OK" aligned and removed duplicated info to short the warning. Signed-off-by: Matthieu Baerts <matthieu.baerts@tessares.net> Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
f384221a38
commit
45759a8715
1 changed files with 40 additions and 23 deletions
|
@ -334,6 +334,21 @@ do_ping()
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# $1: ns, $2: MIB counter
|
||||||
|
get_mib_counter()
|
||||||
|
{
|
||||||
|
local listener_ns="${1}"
|
||||||
|
local mib="${2}"
|
||||||
|
|
||||||
|
# strip the header
|
||||||
|
ip netns exec "${listener_ns}" \
|
||||||
|
nstat -z -a "${mib}" | \
|
||||||
|
tail -n+2 | \
|
||||||
|
while read a count c rest; do
|
||||||
|
echo $count
|
||||||
|
done
|
||||||
|
}
|
||||||
|
|
||||||
# $1: ns, $2: port
|
# $1: ns, $2: port
|
||||||
wait_local_port_listen()
|
wait_local_port_listen()
|
||||||
{
|
{
|
||||||
|
@ -410,10 +425,10 @@ do_transfer()
|
||||||
sleep 1
|
sleep 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
local stat_synrx_last_l=$(ip netns exec ${listener_ns} nstat -z -a MPTcpExtMPCapableSYNRX | while read a count c rest ;do echo $count;done)
|
local stat_synrx_last_l=$(get_mib_counter "${listener_ns}" "MPTcpExtMPCapableSYNRX")
|
||||||
local stat_ackrx_last_l=$(ip netns exec ${listener_ns} nstat -z -a MPTcpExtMPCapableACKRX | while read a count c rest ;do echo $count;done)
|
local stat_ackrx_last_l=$(get_mib_counter "${listener_ns}" "MPTcpExtMPCapableACKRX")
|
||||||
local stat_cookietx_last=$(ip netns exec ${listener_ns} nstat -z -a TcpExtSyncookiesSent | while read a count c rest ;do echo $count;done)
|
local stat_cookietx_last=$(get_mib_counter "${listener_ns}" "TcpExtSyncookiesSent")
|
||||||
local stat_cookierx_last=$(ip netns exec ${listener_ns} nstat -z -a TcpExtSyncookiesRecv | while read a count c rest ;do echo $count;done)
|
local stat_cookierx_last=$(get_mib_counter "${listener_ns}" "TcpExtSyncookiesRecv")
|
||||||
|
|
||||||
ip netns exec ${listener_ns} ./mptcp_connect -t $timeout -l -p $port -s ${srv_proto} $extra_args $local_addr < "$sin" > "$sout" &
|
ip netns exec ${listener_ns} ./mptcp_connect -t $timeout -l -p $port -s ${srv_proto} $extra_args $local_addr < "$sin" > "$sout" &
|
||||||
local spid=$!
|
local spid=$!
|
||||||
|
@ -448,15 +463,17 @@ do_transfer()
|
||||||
|
|
||||||
local duration
|
local duration
|
||||||
duration=$((stop-start))
|
duration=$((stop-start))
|
||||||
duration=$(printf "(duration %05sms)" $duration)
|
printf "(duration %05sms) " "${duration}"
|
||||||
if [ ${rets} -ne 0 ] || [ ${retc} -ne 0 ]; then
|
if [ ${rets} -ne 0 ] || [ ${retc} -ne 0 ]; then
|
||||||
echo "$duration [ FAIL ] client exit code $retc, server $rets" 1>&2
|
echo "[ FAIL ] client exit code $retc, server $rets" 1>&2
|
||||||
echo -e "\nnetns ${listener_ns} socket stat for ${port}:" 1>&2
|
echo -e "\nnetns ${listener_ns} socket stat for ${port}:" 1>&2
|
||||||
ip netns exec ${listener_ns} ss -Menita 1>&2 -o "sport = :$port"
|
ip netns exec ${listener_ns} ss -Menita 1>&2 -o "sport = :$port"
|
||||||
cat /tmp/${listener_ns}.out
|
cat /tmp/${listener_ns}.out
|
||||||
echo -e "\nnetns ${connector_ns} socket stat for ${port}:" 1>&2
|
echo -e "\nnetns ${connector_ns} socket stat for ${port}:" 1>&2
|
||||||
ip netns exec ${connector_ns} ss -Menita 1>&2 -o "dport = :$port"
|
ip netns exec ${connector_ns} ss -Menita 1>&2 -o "dport = :$port"
|
||||||
[ ${listener_ns} != ${connector_ns} ] && cat /tmp/${connector_ns}.out
|
[ ${listener_ns} != ${connector_ns} ] && cat /tmp/${connector_ns}.out
|
||||||
|
|
||||||
|
echo
|
||||||
cat "$capout"
|
cat "$capout"
|
||||||
return 1
|
return 1
|
||||||
fi
|
fi
|
||||||
|
@ -466,11 +483,14 @@ do_transfer()
|
||||||
check_transfer $cin $sout "file received by server"
|
check_transfer $cin $sout "file received by server"
|
||||||
rets=$?
|
rets=$?
|
||||||
|
|
||||||
local stat_synrx_now_l=$(ip netns exec ${listener_ns} nstat -z -a MPTcpExtMPCapableSYNRX | while read a count c rest ;do echo $count;done)
|
if [ $retc -eq 0 ] && [ $rets -eq 0 ]; then
|
||||||
local stat_ackrx_now_l=$(ip netns exec ${listener_ns} nstat -z -a MPTcpExtMPCapableACKRX | while read a count c rest ;do echo $count;done)
|
printf "[ OK ]"
|
||||||
|
fi
|
||||||
|
|
||||||
local stat_cookietx_now=$(ip netns exec ${listener_ns} nstat -z -a TcpExtSyncookiesSent | while read a count c rest ;do echo $count;done)
|
local stat_synrx_now_l=$(get_mib_counter "${listener_ns}" "MPTcpExtMPCapableSYNRX")
|
||||||
local stat_cookierx_now=$(ip netns exec ${listener_ns} nstat -z -a TcpExtSyncookiesRecv | while read a count c rest ;do echo $count;done)
|
local stat_ackrx_now_l=$(get_mib_counter "${listener_ns}" "MPTcpExtMPCapableACKRX")
|
||||||
|
local stat_cookietx_now=$(get_mib_counter "${listener_ns}" "TcpExtSyncookiesSent")
|
||||||
|
local stat_cookierx_now=$(get_mib_counter "${listener_ns}" "TcpExtSyncookiesRecv")
|
||||||
|
|
||||||
expect_synrx=$((stat_synrx_last_l))
|
expect_synrx=$((stat_synrx_last_l))
|
||||||
expect_ackrx=$((stat_ackrx_last_l))
|
expect_ackrx=$((stat_ackrx_last_l))
|
||||||
|
@ -484,35 +504,32 @@ do_transfer()
|
||||||
fi
|
fi
|
||||||
if [ $cookies -eq 2 ];then
|
if [ $cookies -eq 2 ];then
|
||||||
if [ $stat_cookietx_last -ge $stat_cookietx_now ] ;then
|
if [ $stat_cookietx_last -ge $stat_cookietx_now ] ;then
|
||||||
echo "${listener_ns} CookieSent: ${cl_proto} -> ${srv_proto}: did not advance"
|
printf " WARN: CookieSent: did not advance"
|
||||||
fi
|
fi
|
||||||
if [ $stat_cookierx_last -ge $stat_cookierx_now ] ;then
|
if [ $stat_cookierx_last -ge $stat_cookierx_now ] ;then
|
||||||
echo "${listener_ns} CookieRecv: ${cl_proto} -> ${srv_proto}: did not advance"
|
printf " WARN: CookieRecv: did not advance"
|
||||||
fi
|
fi
|
||||||
else
|
else
|
||||||
if [ $stat_cookietx_last -ne $stat_cookietx_now ] ;then
|
if [ $stat_cookietx_last -ne $stat_cookietx_now ] ;then
|
||||||
echo "${listener_ns} CookieSent: ${cl_proto} -> ${srv_proto}: changed"
|
printf " WARN: CookieSent: changed"
|
||||||
fi
|
fi
|
||||||
if [ $stat_cookierx_last -ne $stat_cookierx_now ] ;then
|
if [ $stat_cookierx_last -ne $stat_cookierx_now ] ;then
|
||||||
echo "${listener_ns} CookieRecv: ${cl_proto} -> ${srv_proto}: changed"
|
printf " WARN: CookieRecv: changed"
|
||||||
fi
|
fi
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ $expect_synrx -ne $stat_synrx_now_l ] ;then
|
if [ $expect_synrx -ne $stat_synrx_now_l ] ;then
|
||||||
echo "${listener_ns} SYNRX: ${cl_proto} -> ${srv_proto}: expect ${expect_synrx}, got ${stat_synrx_now_l}"
|
printf " WARN: SYNRX: expect %d, got %d" \
|
||||||
|
"${expect_synrx}" "${stat_synrx_now_l}"
|
||||||
fi
|
fi
|
||||||
if [ $expect_ackrx -ne $stat_ackrx_now_l ] ;then
|
if [ $expect_ackrx -ne $stat_ackrx_now_l ] ;then
|
||||||
echo "${listener_ns} ACKRX: ${cl_proto} -> ${srv_proto}: expect ${expect_ackrx}, got ${stat_ackrx_now_l} "
|
printf " WARN: ACKRX: expect %d, got %d" \
|
||||||
fi
|
"${expect_ackrx}" "${stat_ackrx_now_l}"
|
||||||
|
|
||||||
if [ $retc -eq 0 ] && [ $rets -eq 0 ];then
|
|
||||||
echo "$duration [ OK ]"
|
|
||||||
cat "$capout"
|
|
||||||
return 0
|
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
echo
|
||||||
cat "$capout"
|
cat "$capout"
|
||||||
return 1
|
[ $retc -eq 0 ] && [ $rets -eq 0 ]
|
||||||
}
|
}
|
||||||
|
|
||||||
make_file()
|
make_file()
|
||||||
|
|
Loading…
Reference in a new issue