selftests: mptcp: add mptcp_info tests
This patch adds the mptcp_info fields tests in endpoint_tests(). Add a new function chk_mptcp_info() to check the given number of the given mptcp_info field. Link: https://github.com/multipath-tcp/mptcp_net-next/issues/330 Signed-off-by: Geliang Tang <geliang.tang@suse.com> Reviewed-by: Matthieu Baerts <matthieu.baerts@tessares.net> Signed-off-by: Matthieu Baerts <matthieu.baerts@tessares.net> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
e925a0322a
commit
9095ce97bf
|
@ -1719,6 +1719,46 @@ chk_subflow_nr()
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
||||||
|
chk_mptcp_info()
|
||||||
|
{
|
||||||
|
local nr_info=$1
|
||||||
|
local info
|
||||||
|
local cnt1
|
||||||
|
local cnt2
|
||||||
|
local dump_stats
|
||||||
|
|
||||||
|
if [[ $nr_info = "subflows_"* ]]; then
|
||||||
|
info="subflows"
|
||||||
|
nr_info=${nr_info:9}
|
||||||
|
else
|
||||||
|
echo "[fail] unsupported argument: $nr_info"
|
||||||
|
fail_test
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
printf "%-${nr_blank}s %-30s" " " "mptcp_info $info=$nr_info"
|
||||||
|
|
||||||
|
cnt1=$(ss -N $ns1 -inmHM | grep "$info:" |
|
||||||
|
sed -n 's/.*\('"$info"':\)\([[:digit:]]*\).*$/\2/p;q')
|
||||||
|
[ -z "$cnt1" ] && cnt1=0
|
||||||
|
cnt2=$(ss -N $ns2 -inmHM | grep "$info:" |
|
||||||
|
sed -n 's/.*\('"$info"':\)\([[:digit:]]*\).*$/\2/p;q')
|
||||||
|
[ -z "$cnt2" ] && cnt2=0
|
||||||
|
if [ "$cnt1" != "$nr_info" ] || [ "$cnt2" != "$nr_info" ]; then
|
||||||
|
echo "[fail] got $cnt1:$cnt2 $info expected $nr_info"
|
||||||
|
fail_test
|
||||||
|
dump_stats=1
|
||||||
|
else
|
||||||
|
echo "[ ok ]"
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$dump_stats" = 1 ]; then
|
||||||
|
ss -N $ns1 -inmHM
|
||||||
|
ss -N $ns2 -inmHM
|
||||||
|
dump_stats
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
chk_link_usage()
|
chk_link_usage()
|
||||||
{
|
{
|
||||||
local ns=$1
|
local ns=$1
|
||||||
|
@ -3118,13 +3158,18 @@ endpoint_tests()
|
||||||
run_tests $ns1 $ns2 10.0.1.1 4 0 0 speed_20 2>/dev/null &
|
run_tests $ns1 $ns2 10.0.1.1 4 0 0 speed_20 2>/dev/null &
|
||||||
|
|
||||||
wait_mpj $ns2
|
wait_mpj $ns2
|
||||||
|
chk_subflow_nr needtitle "before delete" 2
|
||||||
|
chk_mptcp_info subflows_1
|
||||||
|
|
||||||
pm_nl_del_endpoint $ns2 2 10.0.2.2
|
pm_nl_del_endpoint $ns2 2 10.0.2.2
|
||||||
sleep 0.5
|
sleep 0.5
|
||||||
chk_subflow_nr needtitle "after delete" 1
|
chk_subflow_nr "" "after delete" 1
|
||||||
|
chk_mptcp_info subflows_0
|
||||||
|
|
||||||
pm_nl_add_endpoint $ns2 10.0.2.2 dev ns2eth2 flags subflow
|
pm_nl_add_endpoint $ns2 10.0.2.2 dev ns2eth2 flags subflow
|
||||||
wait_mpj $ns2
|
wait_mpj $ns2
|
||||||
chk_subflow_nr "" "after re-add" 2
|
chk_subflow_nr "" "after re-add" 2
|
||||||
|
chk_mptcp_info subflows_1
|
||||||
kill_tests_wait
|
kill_tests_wait
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue