Message ID | 15333b645caafe2b7fbb028e67bb788c0d5cf526.1622719000.git.pabeni@redhat.com (mailing list archive) |
---|---|
State | Superseded, archived |
Commit | 48490d1c2717ac304e93ec05228e75a2ff709a42 |
Headers | show |
Series | [mptcp-net] selftests: mptcp: enable syncookie only in absence of reorders | expand |
Paolo Abeni <pabeni@redhat.com> wrote: > Syncookie validation may fail for OoO packets, causing spurious > resets and self-tests failures, so let's force syncookie only > for tests iteration with no OoO. > > Fixes: fed61c4b584c ("selftests: mptcp: make 2nd net namespace use tcp syn cookies unconditionally") > Closes: https://github.com/multipath-tcp/mptcp_net-next/issues/198 > Signed-off-by: Paolo Abeni <pabeni@redhat.com> > --- > tools/testing/selftests/net/mptcp/mptcp_connect.sh | 10 +++++++--- > 1 file changed, 7 insertions(+), 3 deletions(-) > > diff --git a/tools/testing/selftests/net/mptcp/mptcp_connect.sh b/tools/testing/selftests/net/mptcp/mptcp_connect.sh > index 69351c3eb68c..9e53334c9512 100755 > --- a/tools/testing/selftests/net/mptcp/mptcp_connect.sh > +++ b/tools/testing/selftests/net/mptcp/mptcp_connect.sh > @@ -202,9 +202,6 @@ ip -net "$ns4" link set ns4eth3 up > ip -net "$ns4" route add default via 10.0.3.2 > ip -net "$ns4" route add default via dead:beef:3::2 > > -# use TCP syn cookies, even if no flooding was detected. > -ip netns exec "$ns2" sysctl -q net.ipv4.tcp_syncookies=2 > - > if $checksum; then > for i in "$ns1" "$ns2" "$ns3" "$ns4";do > ip netns exec $i sysctl -q net.mptcp.checksum_enabled=1 > @@ -748,6 +745,13 @@ for sender in $ns1 $ns2 $ns3 $ns4;do > exit $ret > fi > > + # force TCP syn cookies only if there is no reorder > + if [ $sender = $ns1 ]; then > + ip netns exec "$ns2" sysctl -q net.ipv4.tcp_syncookies=2 I wasn't clear to me at first glance what $sender = $ns1 had to do with reordering. Maybe: # ns1<->ns2 is not subject to reordering/tc delays. Use it to test # mptcp syncookie support. ?
On Thu, 2021-06-03 at 13:29 +0200, Florian Westphal wrote: > Paolo Abeni <pabeni@redhat.com> wrote: > > Syncookie validation may fail for OoO packets, causing spurious > > resets and self-tests failures, so let's force syncookie only > > for tests iteration with no OoO. > > > > Fixes: fed61c4b584c ("selftests: mptcp: make 2nd net namespace use tcp syn cookies unconditionally") > > Closes: https://github.com/multipath-tcp/mptcp_net-next/issues/198 > > Signed-off-by: Paolo Abeni <pabeni@redhat.com> > > --- > > tools/testing/selftests/net/mptcp/mptcp_connect.sh | 10 +++++++--- > > 1 file changed, 7 insertions(+), 3 deletions(-) > > > > diff --git a/tools/testing/selftests/net/mptcp/mptcp_connect.sh b/tools/testing/selftests/net/mptcp/mptcp_connect.sh > > index 69351c3eb68c..9e53334c9512 100755 > > --- a/tools/testing/selftests/net/mptcp/mptcp_connect.sh > > +++ b/tools/testing/selftests/net/mptcp/mptcp_connect.sh > > @@ -202,9 +202,6 @@ ip -net "$ns4" link set ns4eth3 up > > ip -net "$ns4" route add default via 10.0.3.2 > > ip -net "$ns4" route add default via dead:beef:3::2 > > > > -# use TCP syn cookies, even if no flooding was detected. > > -ip netns exec "$ns2" sysctl -q net.ipv4.tcp_syncookies=2 > > - > > if $checksum; then > > for i in "$ns1" "$ns2" "$ns3" "$ns4";do > > ip netns exec $i sysctl -q net.mptcp.checksum_enabled=1 > > @@ -748,6 +745,13 @@ for sender in $ns1 $ns2 $ns3 $ns4;do > > exit $ret > > fi > > > > + # force TCP syn cookies only if there is no reorder > > + if [ $sender = $ns1 ]; then > > + ip netns exec "$ns2" sysctl -q net.ipv4.tcp_syncookies=2 > > I wasn't clear to me at first glance what $sender = $ns1 had to > do with reordering. > > Maybe: > > # ns1<->ns2 is not subject to reordering/tc delays. Use it to test > # mptcp syncookie support. Yep, that does not hurt ;) Will add in v2, thanks! /P >
diff --git a/tools/testing/selftests/net/mptcp/mptcp_connect.sh b/tools/testing/selftests/net/mptcp/mptcp_connect.sh index 69351c3eb68c..9e53334c9512 100755 --- a/tools/testing/selftests/net/mptcp/mptcp_connect.sh +++ b/tools/testing/selftests/net/mptcp/mptcp_connect.sh @@ -202,9 +202,6 @@ ip -net "$ns4" link set ns4eth3 up ip -net "$ns4" route add default via 10.0.3.2 ip -net "$ns4" route add default via dead:beef:3::2 -# use TCP syn cookies, even if no flooding was detected. -ip netns exec "$ns2" sysctl -q net.ipv4.tcp_syncookies=2 - if $checksum; then for i in "$ns1" "$ns2" "$ns3" "$ns4";do ip netns exec $i sysctl -q net.mptcp.checksum_enabled=1 @@ -748,6 +745,13 @@ for sender in $ns1 $ns2 $ns3 $ns4;do exit $ret fi + # force TCP syn cookies only if there is no reorder + if [ $sender = $ns1 ]; then + ip netns exec "$ns2" sysctl -q net.ipv4.tcp_syncookies=2 + else + ip netns exec "$ns2" sysctl -q net.ipv4.tcp_syncookies=1 + fi + run_tests "$ns2" $sender 10.0.1.2 run_tests "$ns2" $sender dead:beef:1::2 run_tests "$ns2" $sender 10.0.2.1
Syncookie validation may fail for OoO packets, causing spurious resets and self-tests failures, so let's force syncookie only for tests iteration with no OoO. Fixes: fed61c4b584c ("selftests: mptcp: make 2nd net namespace use tcp syn cookies unconditionally") Closes: https://github.com/multipath-tcp/mptcp_net-next/issues/198 Signed-off-by: Paolo Abeni <pabeni@redhat.com> --- tools/testing/selftests/net/mptcp/mptcp_connect.sh | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-)