mirror of
https://github.com/torvalds/linux.git
synced 2024-11-25 21:51:40 +00:00
selftests: mptcp: more robust signal race test
The in kernel MPTCP PM implementation can process a single incoming add address option at any given time. In the mentioned test the server can surpass such limit. Let the setup cope with that allowing a faster add_addr retransmission. Fixes:a88c9e4969
("mptcp: do not block subflows creation on errors") Fixes:f7efc7771e
("mptcp: drop argument port from mptcp_pm_announce_addr") Closes: https://github.com/multipath-tcp/mptcp_net-next/issues/254 Reported-and-tested-by: Matthieu Baerts <matthieu.baerts@tessares.net> Reviewed-by: Matthieu Baerts <matthieu.baerts@tessares.net> Signed-off-by: Paolo Abeni <pabeni@redhat.com> 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
f73c119463
commit
6ef84b1517
@ -752,11 +752,17 @@ chk_add_nr()
|
||||
local mis_ack_nr=${8:-0}
|
||||
local count
|
||||
local dump_stats
|
||||
local timeout
|
||||
|
||||
timeout=`ip netns exec $ns1 sysctl -n net.mptcp.add_addr_timeout`
|
||||
|
||||
printf "%-39s %s" " " "add"
|
||||
count=`ip netns exec $ns2 nstat -as | grep MPTcpExtAddAddr | awk '{print $2}'`
|
||||
count=`ip netns exec $ns2 nstat -as MPTcpExtAddAddr | grep MPTcpExtAddAddr | awk '{print $2}'`
|
||||
[ -z "$count" ] && count=0
|
||||
if [ "$count" != "$add_nr" ]; then
|
||||
|
||||
# if the test configured a short timeout tolerate greater then expected
|
||||
# add addrs options, due to retransmissions
|
||||
if [ "$count" != "$add_nr" ] && [ "$timeout" -gt 1 -o "$count" -lt "$add_nr" ]; then
|
||||
echo "[fail] got $count ADD_ADDR[s] expected $add_nr"
|
||||
ret=1
|
||||
dump_stats=1
|
||||
@ -1158,7 +1164,10 @@ signal_address_tests()
|
||||
ip netns exec $ns2 ./pm_nl_ctl add 10.0.2.2 flags signal
|
||||
ip netns exec $ns2 ./pm_nl_ctl add 10.0.3.2 flags signal
|
||||
ip netns exec $ns2 ./pm_nl_ctl add 10.0.4.2 flags signal
|
||||
run_tests $ns1 $ns2 10.0.1.1
|
||||
|
||||
# the peer could possibly miss some addr notification, allow retransmission
|
||||
ip netns exec $ns1 sysctl -q net.mptcp.add_addr_timeout=1
|
||||
run_tests $ns1 $ns2 10.0.1.1 0 0 0 slow
|
||||
chk_join_nr "signal addresses race test" 3 3 3
|
||||
|
||||
# the server will not signal the address terminating
|
||||
|
Loading…
Reference in New Issue
Block a user