Commit 61c131f5 authored by Geliang Tang's avatar Geliang Tang Committed by Jakub Kicinski

selftests: mptcp: add mptcp_lib_get_counter

To avoid duplicated code in different MPTCP selftests, we can add
and use helpers defined in mptcp_lib.sh.

The helper get_counter() in mptcp_join.sh and get_mib_counter() in
mptcp_connect.sh have the same functionality, export get_counter() into
mptcp_lib.sh and rename it as mptcp_lib_get_counter(). Use this new
helper instead of get_counter() and get_mib_counter().

Use this helper in test_prio() in userspace_pm.sh too instead of
open-coding.
Reviewed-by: default avatarMatthieu Baerts <matttbe@kernel.org>
Signed-off-by: default avatarGeliang Tang <geliang.tang@suse.com>
Signed-off-by: default avatarMat Martineau <martineau@kernel.org>
Link: https://lore.kernel.org/r/20231128-send-net-next-2023107-v4-11-8d6b94150f6b@kernel.orgSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent b850f2c7
...@@ -335,21 +335,6 @@ do_ping() ...@@ -335,21 +335,6 @@ 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()
{ {
...@@ -435,12 +420,12 @@ do_transfer() ...@@ -435,12 +420,12 @@ do_transfer()
nstat -n nstat -n
fi fi
local stat_synrx_last_l=$(get_mib_counter "${listener_ns}" "MPTcpExtMPCapableSYNRX") local stat_synrx_last_l=$(mptcp_lib_get_counter "${listener_ns}" "MPTcpExtMPCapableSYNRX")
local stat_ackrx_last_l=$(get_mib_counter "${listener_ns}" "MPTcpExtMPCapableACKRX") local stat_ackrx_last_l=$(mptcp_lib_get_counter "${listener_ns}" "MPTcpExtMPCapableACKRX")
local stat_cookietx_last=$(get_mib_counter "${listener_ns}" "TcpExtSyncookiesSent") local stat_cookietx_last=$(mptcp_lib_get_counter "${listener_ns}" "TcpExtSyncookiesSent")
local stat_cookierx_last=$(get_mib_counter "${listener_ns}" "TcpExtSyncookiesRecv") local stat_cookierx_last=$(mptcp_lib_get_counter "${listener_ns}" "TcpExtSyncookiesRecv")
local stat_csum_err_s=$(get_mib_counter "${listener_ns}" "MPTcpExtDataCsumErr") local stat_csum_err_s=$(mptcp_lib_get_counter "${listener_ns}" "MPTcpExtDataCsumErr")
local stat_csum_err_c=$(get_mib_counter "${connector_ns}" "MPTcpExtDataCsumErr") local stat_csum_err_c=$(mptcp_lib_get_counter "${connector_ns}" "MPTcpExtDataCsumErr")
timeout ${timeout_test} \ timeout ${timeout_test} \
ip netns exec ${listener_ns} \ ip netns exec ${listener_ns} \
...@@ -503,11 +488,11 @@ do_transfer() ...@@ -503,11 +488,11 @@ 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=$(get_mib_counter "${listener_ns}" "MPTcpExtMPCapableSYNRX") local stat_synrx_now_l=$(mptcp_lib_get_counter "${listener_ns}" "MPTcpExtMPCapableSYNRX")
local stat_ackrx_now_l=$(get_mib_counter "${listener_ns}" "MPTcpExtMPCapableACKRX") local stat_ackrx_now_l=$(mptcp_lib_get_counter "${listener_ns}" "MPTcpExtMPCapableACKRX")
local stat_cookietx_now=$(get_mib_counter "${listener_ns}" "TcpExtSyncookiesSent") local stat_cookietx_now=$(mptcp_lib_get_counter "${listener_ns}" "TcpExtSyncookiesSent")
local stat_cookierx_now=$(get_mib_counter "${listener_ns}" "TcpExtSyncookiesRecv") local stat_cookierx_now=$(mptcp_lib_get_counter "${listener_ns}" "TcpExtSyncookiesRecv")
local stat_ooo_now=$(get_mib_counter "${listener_ns}" "TcpExtTCPOFOQueue") local stat_ooo_now=$(mptcp_lib_get_counter "${listener_ns}" "TcpExtTCPOFOQueue")
expect_synrx=$((stat_synrx_last_l)) expect_synrx=$((stat_synrx_last_l))
expect_ackrx=$((stat_ackrx_last_l)) expect_ackrx=$((stat_ackrx_last_l))
...@@ -536,8 +521,8 @@ do_transfer() ...@@ -536,8 +521,8 @@ do_transfer()
fi fi
if $checksum; then if $checksum; then
local csum_err_s=$(get_mib_counter "${listener_ns}" "MPTcpExtDataCsumErr") local csum_err_s=$(mptcp_lib_get_counter "${listener_ns}" "MPTcpExtDataCsumErr")
local csum_err_c=$(get_mib_counter "${connector_ns}" "MPTcpExtDataCsumErr") local csum_err_c=$(mptcp_lib_get_counter "${connector_ns}" "MPTcpExtDataCsumErr")
local csum_err_s_nr=$((csum_err_s - stat_csum_err_s)) local csum_err_s_nr=$((csum_err_s - stat_csum_err_s))
if [ $csum_err_s_nr -gt 0 ]; then if [ $csum_err_s_nr -gt 0 ]; then
......
...@@ -605,25 +605,9 @@ wait_local_port_listen() ...@@ -605,25 +605,9 @@ wait_local_port_listen()
done done
} }
# $1: ns ; $2: counter
get_counter()
{
local ns="${1}"
local counter="${2}"
local count
count=$(ip netns exec ${ns} nstat -asz "${counter}" | awk 'NR==1 {next} {print $2}')
if [ -z "${count}" ]; then
mptcp_lib_fail_if_expected_feature "${counter} counter"
return 1
fi
echo "${count}"
}
rm_addr_count() rm_addr_count()
{ {
get_counter "${1}" "MPTcpExtRmAddr" mptcp_lib_get_counter "${1}" "MPTcpExtRmAddr"
} }
# $1: ns, $2: old rm_addr counter in $ns # $1: ns, $2: old rm_addr counter in $ns
...@@ -643,7 +627,7 @@ wait_rm_addr() ...@@ -643,7 +627,7 @@ wait_rm_addr()
rm_sf_count() rm_sf_count()
{ {
get_counter "${1}" "MPTcpExtRmSubflow" mptcp_lib_get_counter "${1}" "MPTcpExtRmSubflow"
} }
# $1: ns, $2: old rm_sf counter in $ns # $1: ns, $2: old rm_sf counter in $ns
...@@ -666,11 +650,11 @@ wait_mpj() ...@@ -666,11 +650,11 @@ wait_mpj()
local ns="${1}" local ns="${1}"
local cnt old_cnt local cnt old_cnt
old_cnt=$(get_counter ${ns} "MPTcpExtMPJoinAckRx") old_cnt=$(mptcp_lib_get_counter ${ns} "MPTcpExtMPJoinAckRx")
local i local i
for i in $(seq 10); do for i in $(seq 10); do
cnt=$(get_counter ${ns} "MPTcpExtMPJoinAckRx") cnt=$(mptcp_lib_get_counter ${ns} "MPTcpExtMPJoinAckRx")
[ "$cnt" = "${old_cnt}" ] || break [ "$cnt" = "${old_cnt}" ] || break
sleep 0.1 sleep 0.1
done done
...@@ -1272,7 +1256,7 @@ chk_csum_nr() ...@@ -1272,7 +1256,7 @@ chk_csum_nr()
fi fi
print_check "sum" print_check "sum"
count=$(get_counter ${ns1} "MPTcpExtDataCsumErr") count=$(mptcp_lib_get_counter ${ns1} "MPTcpExtDataCsumErr")
if [ "$count" != "$csum_ns1" ]; then if [ "$count" != "$csum_ns1" ]; then
extra_msg="$extra_msg ns1=$count" extra_msg="$extra_msg ns1=$count"
fi fi
...@@ -1285,7 +1269,7 @@ chk_csum_nr() ...@@ -1285,7 +1269,7 @@ chk_csum_nr()
print_ok print_ok
fi fi
print_check "csum" print_check "csum"
count=$(get_counter ${ns2} "MPTcpExtDataCsumErr") count=$(mptcp_lib_get_counter ${ns2} "MPTcpExtDataCsumErr")
if [ "$count" != "$csum_ns2" ]; then if [ "$count" != "$csum_ns2" ]; then
extra_msg="$extra_msg ns2=$count" extra_msg="$extra_msg ns2=$count"
fi fi
...@@ -1329,7 +1313,7 @@ chk_fail_nr() ...@@ -1329,7 +1313,7 @@ chk_fail_nr()
fi fi
print_check "ftx" print_check "ftx"
count=$(get_counter ${ns_tx} "MPTcpExtMPFailTx") count=$(mptcp_lib_get_counter ${ns_tx} "MPTcpExtMPFailTx")
if [ "$count" != "$fail_tx" ]; then if [ "$count" != "$fail_tx" ]; then
extra_msg="$extra_msg,tx=$count" extra_msg="$extra_msg,tx=$count"
fi fi
...@@ -1343,7 +1327,7 @@ chk_fail_nr() ...@@ -1343,7 +1327,7 @@ chk_fail_nr()
fi fi
print_check "failrx" print_check "failrx"
count=$(get_counter ${ns_rx} "MPTcpExtMPFailRx") count=$(mptcp_lib_get_counter ${ns_rx} "MPTcpExtMPFailRx")
if [ "$count" != "$fail_rx" ]; then if [ "$count" != "$fail_rx" ]; then
extra_msg="$extra_msg,rx=$count" extra_msg="$extra_msg,rx=$count"
fi fi
...@@ -1376,7 +1360,7 @@ chk_fclose_nr() ...@@ -1376,7 +1360,7 @@ chk_fclose_nr()
fi fi
print_check "ctx" print_check "ctx"
count=$(get_counter ${ns_tx} "MPTcpExtMPFastcloseTx") count=$(mptcp_lib_get_counter ${ns_tx} "MPTcpExtMPFastcloseTx")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
elif [ "$count" != "$fclose_tx" ]; then elif [ "$count" != "$fclose_tx" ]; then
...@@ -1387,7 +1371,7 @@ chk_fclose_nr() ...@@ -1387,7 +1371,7 @@ chk_fclose_nr()
fi fi
print_check "fclzrx" print_check "fclzrx"
count=$(get_counter ${ns_rx} "MPTcpExtMPFastcloseRx") count=$(mptcp_lib_get_counter ${ns_rx} "MPTcpExtMPFastcloseRx")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
elif [ "$count" != "$fclose_rx" ]; then elif [ "$count" != "$fclose_rx" ]; then
...@@ -1417,7 +1401,7 @@ chk_rst_nr() ...@@ -1417,7 +1401,7 @@ chk_rst_nr()
fi fi
print_check "rtx" print_check "rtx"
count=$(get_counter ${ns_tx} "MPTcpExtMPRstTx") count=$(mptcp_lib_get_counter ${ns_tx} "MPTcpExtMPRstTx")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
# accept more rst than expected except if we don't expect any # accept more rst than expected except if we don't expect any
...@@ -1429,7 +1413,7 @@ chk_rst_nr() ...@@ -1429,7 +1413,7 @@ chk_rst_nr()
fi fi
print_check "rstrx" print_check "rstrx"
count=$(get_counter ${ns_rx} "MPTcpExtMPRstRx") count=$(mptcp_lib_get_counter ${ns_rx} "MPTcpExtMPRstRx")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
# accept more rst than expected except if we don't expect any # accept more rst than expected except if we don't expect any
...@@ -1450,7 +1434,7 @@ chk_infi_nr() ...@@ -1450,7 +1434,7 @@ chk_infi_nr()
local count local count
print_check "itx" print_check "itx"
count=$(get_counter ${ns2} "MPTcpExtInfiniteMapTx") count=$(mptcp_lib_get_counter ${ns2} "MPTcpExtInfiniteMapTx")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
elif [ "$count" != "$infi_tx" ]; then elif [ "$count" != "$infi_tx" ]; then
...@@ -1460,7 +1444,7 @@ chk_infi_nr() ...@@ -1460,7 +1444,7 @@ chk_infi_nr()
fi fi
print_check "infirx" print_check "infirx"
count=$(get_counter ${ns1} "MPTcpExtInfiniteMapRx") count=$(mptcp_lib_get_counter ${ns1} "MPTcpExtInfiniteMapRx")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
elif [ "$count" != "$infi_rx" ]; then elif [ "$count" != "$infi_rx" ]; then
...@@ -1489,7 +1473,7 @@ chk_join_nr() ...@@ -1489,7 +1473,7 @@ chk_join_nr()
fi fi
print_check "syn" print_check "syn"
count=$(get_counter ${ns1} "MPTcpExtMPJoinSynRx") count=$(mptcp_lib_get_counter ${ns1} "MPTcpExtMPJoinSynRx")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
elif [ "$count" != "$syn_nr" ]; then elif [ "$count" != "$syn_nr" ]; then
...@@ -1500,7 +1484,7 @@ chk_join_nr() ...@@ -1500,7 +1484,7 @@ chk_join_nr()
print_check "synack" print_check "synack"
with_cookie=$(ip netns exec $ns2 sysctl -n net.ipv4.tcp_syncookies) with_cookie=$(ip netns exec $ns2 sysctl -n net.ipv4.tcp_syncookies)
count=$(get_counter ${ns2} "MPTcpExtMPJoinSynAckRx") count=$(mptcp_lib_get_counter ${ns2} "MPTcpExtMPJoinSynAckRx")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
elif [ "$count" != "$syn_ack_nr" ]; then elif [ "$count" != "$syn_ack_nr" ]; then
...@@ -1517,7 +1501,7 @@ chk_join_nr() ...@@ -1517,7 +1501,7 @@ chk_join_nr()
fi fi
print_check "ack" print_check "ack"
count=$(get_counter ${ns1} "MPTcpExtMPJoinAckRx") count=$(mptcp_lib_get_counter ${ns1} "MPTcpExtMPJoinAckRx")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
elif [ "$count" != "$ack_nr" ]; then elif [ "$count" != "$ack_nr" ]; then
...@@ -1550,8 +1534,8 @@ chk_stale_nr() ...@@ -1550,8 +1534,8 @@ chk_stale_nr()
print_check "stale" print_check "stale"
stale_nr=$(get_counter ${ns} "MPTcpExtSubflowStale") stale_nr=$(mptcp_lib_get_counter ${ns} "MPTcpExtSubflowStale")
recover_nr=$(get_counter ${ns} "MPTcpExtSubflowRecover") recover_nr=$(mptcp_lib_get_counter ${ns} "MPTcpExtSubflowRecover")
if [ -z "$stale_nr" ] || [ -z "$recover_nr" ]; then if [ -z "$stale_nr" ] || [ -z "$recover_nr" ]; then
print_skip print_skip
elif [ $stale_nr -lt $stale_min ] || elif [ $stale_nr -lt $stale_min ] ||
...@@ -1588,7 +1572,7 @@ chk_add_nr() ...@@ -1588,7 +1572,7 @@ chk_add_nr()
timeout=$(ip netns exec $ns1 sysctl -n net.mptcp.add_addr_timeout) timeout=$(ip netns exec $ns1 sysctl -n net.mptcp.add_addr_timeout)
print_check "add" print_check "add"
count=$(get_counter ${ns2} "MPTcpExtAddAddr") count=$(mptcp_lib_get_counter ${ns2} "MPTcpExtAddAddr")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
# if the test configured a short timeout tolerate greater then expected # if the test configured a short timeout tolerate greater then expected
...@@ -1600,7 +1584,7 @@ chk_add_nr() ...@@ -1600,7 +1584,7 @@ chk_add_nr()
fi fi
print_check "echo" print_check "echo"
count=$(get_counter ${ns1} "MPTcpExtEchoAdd") count=$(mptcp_lib_get_counter ${ns1} "MPTcpExtEchoAdd")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
elif [ "$count" != "$echo_nr" ]; then elif [ "$count" != "$echo_nr" ]; then
...@@ -1611,7 +1595,7 @@ chk_add_nr() ...@@ -1611,7 +1595,7 @@ chk_add_nr()
if [ $port_nr -gt 0 ]; then if [ $port_nr -gt 0 ]; then
print_check "pt" print_check "pt"
count=$(get_counter ${ns2} "MPTcpExtPortAdd") count=$(mptcp_lib_get_counter ${ns2} "MPTcpExtPortAdd")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
elif [ "$count" != "$port_nr" ]; then elif [ "$count" != "$port_nr" ]; then
...@@ -1621,7 +1605,7 @@ chk_add_nr() ...@@ -1621,7 +1605,7 @@ chk_add_nr()
fi fi
print_check "syn" print_check "syn"
count=$(get_counter ${ns1} "MPTcpExtMPJoinPortSynRx") count=$(mptcp_lib_get_counter ${ns1} "MPTcpExtMPJoinPortSynRx")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
elif [ "$count" != "$syn_nr" ]; then elif [ "$count" != "$syn_nr" ]; then
...@@ -1632,7 +1616,7 @@ chk_add_nr() ...@@ -1632,7 +1616,7 @@ chk_add_nr()
fi fi
print_check "synack" print_check "synack"
count=$(get_counter ${ns2} "MPTcpExtMPJoinPortSynAckRx") count=$(mptcp_lib_get_counter ${ns2} "MPTcpExtMPJoinPortSynAckRx")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
elif [ "$count" != "$syn_ack_nr" ]; then elif [ "$count" != "$syn_ack_nr" ]; then
...@@ -1643,7 +1627,7 @@ chk_add_nr() ...@@ -1643,7 +1627,7 @@ chk_add_nr()
fi fi
print_check "ack" print_check "ack"
count=$(get_counter ${ns1} "MPTcpExtMPJoinPortAckRx") count=$(mptcp_lib_get_counter ${ns1} "MPTcpExtMPJoinPortAckRx")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
elif [ "$count" != "$ack_nr" ]; then elif [ "$count" != "$ack_nr" ]; then
...@@ -1654,7 +1638,7 @@ chk_add_nr() ...@@ -1654,7 +1638,7 @@ chk_add_nr()
fi fi
print_check "syn" print_check "syn"
count=$(get_counter ${ns1} "MPTcpExtMismatchPortSynRx") count=$(mptcp_lib_get_counter ${ns1} "MPTcpExtMismatchPortSynRx")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
elif [ "$count" != "$mis_syn_nr" ]; then elif [ "$count" != "$mis_syn_nr" ]; then
...@@ -1665,7 +1649,7 @@ chk_add_nr() ...@@ -1665,7 +1649,7 @@ chk_add_nr()
fi fi
print_check "ack" print_check "ack"
count=$(get_counter ${ns1} "MPTcpExtMismatchPortAckRx") count=$(mptcp_lib_get_counter ${ns1} "MPTcpExtMismatchPortAckRx")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
elif [ "$count" != "$mis_ack_nr" ]; then elif [ "$count" != "$mis_ack_nr" ]; then
...@@ -1687,7 +1671,7 @@ chk_add_tx_nr() ...@@ -1687,7 +1671,7 @@ chk_add_tx_nr()
timeout=$(ip netns exec $ns1 sysctl -n net.mptcp.add_addr_timeout) timeout=$(ip netns exec $ns1 sysctl -n net.mptcp.add_addr_timeout)
print_check "add TX" print_check "add TX"
count=$(get_counter ${ns1} "MPTcpExtAddAddrTx") count=$(mptcp_lib_get_counter ${ns1} "MPTcpExtAddAddrTx")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
# if the test configured a short timeout tolerate greater then expected # if the test configured a short timeout tolerate greater then expected
...@@ -1699,7 +1683,7 @@ chk_add_tx_nr() ...@@ -1699,7 +1683,7 @@ chk_add_tx_nr()
fi fi
print_check "echo TX" print_check "echo TX"
count=$(get_counter ${ns2} "MPTcpExtEchoAddTx") count=$(mptcp_lib_get_counter ${ns2} "MPTcpExtEchoAddTx")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
elif [ "$count" != "$echo_tx_nr" ]; then elif [ "$count" != "$echo_tx_nr" ]; then
...@@ -1737,7 +1721,7 @@ chk_rm_nr() ...@@ -1737,7 +1721,7 @@ chk_rm_nr()
fi fi
print_check "rm" print_check "rm"
count=$(get_counter ${addr_ns} "MPTcpExtRmAddr") count=$(mptcp_lib_get_counter ${addr_ns} "MPTcpExtRmAddr")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
elif [ "$count" != "$rm_addr_nr" ]; then elif [ "$count" != "$rm_addr_nr" ]; then
...@@ -1747,13 +1731,13 @@ chk_rm_nr() ...@@ -1747,13 +1731,13 @@ chk_rm_nr()
fi fi
print_check "rmsf" print_check "rmsf"
count=$(get_counter ${subflow_ns} "MPTcpExtRmSubflow") count=$(mptcp_lib_get_counter ${subflow_ns} "MPTcpExtRmSubflow")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
elif [ -n "$simult" ]; then elif [ -n "$simult" ]; then
local cnt suffix local cnt suffix
cnt=$(get_counter ${addr_ns} "MPTcpExtRmSubflow") cnt=$(mptcp_lib_get_counter ${addr_ns} "MPTcpExtRmSubflow")
# in case of simult flush, the subflow removal count on each side is # in case of simult flush, the subflow removal count on each side is
# unreliable # unreliable
...@@ -1782,7 +1766,7 @@ chk_rm_tx_nr() ...@@ -1782,7 +1766,7 @@ chk_rm_tx_nr()
local rm_addr_tx_nr=$1 local rm_addr_tx_nr=$1
print_check "rm TX" print_check "rm TX"
count=$(get_counter ${ns2} "MPTcpExtRmAddrTx") count=$(mptcp_lib_get_counter ${ns2} "MPTcpExtRmAddrTx")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
elif [ "$count" != "$rm_addr_tx_nr" ]; then elif [ "$count" != "$rm_addr_tx_nr" ]; then
...@@ -1799,7 +1783,7 @@ chk_prio_nr() ...@@ -1799,7 +1783,7 @@ chk_prio_nr()
local count local count
print_check "ptx" print_check "ptx"
count=$(get_counter ${ns1} "MPTcpExtMPPrioTx") count=$(mptcp_lib_get_counter ${ns1} "MPTcpExtMPPrioTx")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
elif [ "$count" != "$mp_prio_nr_tx" ]; then elif [ "$count" != "$mp_prio_nr_tx" ]; then
...@@ -1809,7 +1793,7 @@ chk_prio_nr() ...@@ -1809,7 +1793,7 @@ chk_prio_nr()
fi fi
print_check "prx" print_check "prx"
count=$(get_counter ${ns1} "MPTcpExtMPPrioRx") count=$(mptcp_lib_get_counter ${ns1} "MPTcpExtMPPrioRx")
if [ -z "$count" ]; then if [ -z "$count" ]; then
print_skip print_skip
elif [ "$count" != "$mp_prio_nr_rx" ]; then elif [ "$count" != "$mp_prio_nr_rx" ]; then
...@@ -1943,7 +1927,7 @@ wait_attempt_fail() ...@@ -1943,7 +1927,7 @@ wait_attempt_fail()
while [ $time -lt $timeout_ms ]; do while [ $time -lt $timeout_ms ]; do
local cnt local cnt
cnt=$(get_counter ${ns} "TcpAttemptFails") cnt=$(mptcp_lib_get_counter ${ns} "TcpAttemptFails")
[ "$cnt" = 1 ] && return 1 [ "$cnt" = 1 ] && return 1
time=$((time + 100)) time=$((time + 100))
......
...@@ -231,3 +231,19 @@ mptcp_lib_kill_wait() { ...@@ -231,3 +231,19 @@ mptcp_lib_kill_wait() {
mptcp_lib_is_v6() { mptcp_lib_is_v6() {
[ -z "${1##*:*}" ] [ -z "${1##*:*}" ]
} }
# $1: ns, $2: MIB counter
mptcp_lib_get_counter() {
local ns="${1}"
local counter="${2}"
local count
count=$(ip netns exec "${ns}" nstat -asz "${counter}" |
awk 'NR==1 {next} {print $2}')
if [ -z "${count}" ]; then
mptcp_lib_fail_if_expected_feature "${counter} counter"
return 1
fi
echo "${count}"
}
...@@ -884,9 +884,10 @@ test_prio() ...@@ -884,9 +884,10 @@ test_prio()
# Check TX # Check TX
print_test "MP_PRIO TX" print_test "MP_PRIO TX"
count=$(ip netns exec "$ns2" nstat -as | grep MPTcpExtMPPrioTx | awk '{print $2}') count=$(mptcp_lib_get_counter "$ns2" "MPTcpExtMPPrioTx")
[ -z "$count" ] && count=0 if [ -z "$count" ]; then
if [ $count != 1 ]; then test_skip
elif [ $count != 1 ]; then
test_fail "Count != 1: ${count}" test_fail "Count != 1: ${count}"
else else
test_pass test_pass
...@@ -894,9 +895,10 @@ test_prio() ...@@ -894,9 +895,10 @@ test_prio()
# Check RX # Check RX
print_test "MP_PRIO RX" print_test "MP_PRIO RX"
count=$(ip netns exec "$ns1" nstat -as | grep MPTcpExtMPPrioRx | awk '{print $2}') count=$(mptcp_lib_get_counter "$ns1" "MPTcpExtMPPrioRx")
[ -z "$count" ] && count=0 if [ -z "$count" ]; then
if [ $count != 1 ]; then test_skip
elif [ $count != 1 ]; then
test_fail "Count != 1: ${count}" test_fail "Count != 1: ${count}"
else else
test_pass test_pass
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment