From 87af41c92caa695f4f0b096c4e2799b2d47adce3 Mon Sep 17 00:00:00 2001 From: Matthieu Baerts Date: Mon, 27 Jul 2020 14:55:39 +0200 Subject: [PATCH] mptcp: tests: relax syscalls Similar to: - 77f91c3 ("mptcp: add addr: more tolerant with the read") - f357950 ("mptcp: add addr: syscall can be delayed") - 0add6dc ("mptcp: join: let the server start") We are more tolerant with system call that can start with a bit of delay, especially with a debug kconfig. Here for all syscalls, except socket(), we launch them with a delay but we don't verify how long they take to execute. Similar to what is done in 'tcp' dir: git grep "^\\s*0" -- mptcp | grep -v "socket(" Here, I had an issue with the add_addr test but why not preventively fix that for all mptcp tests. Signed-off-by: Matthieu Baerts --- gtests/net/mptcp/add_addr/add_addr_client.pkt | 4 ++-- gtests/net/mptcp/dss/dss_ssn_specified_client.pkt | 8 ++++---- gtests/net/mptcp/dss/dss_ssn_specified_server.pkt | 2 +- gtests/net/mptcp/dss/mpc_with_data_client.pkt | 6 +++--- .../net/mptcp/mp_capable/v1_connect_tcpfallback_flagB.pkt | 4 ++-- .../net/mptcp/mp_capable/v1_connect_tcpfallback_flagH.pkt | 4 ++-- .../mptcp/mp_capable/v1_connect_tcpfallback_wrongver.pkt | 4 ++-- .../net/mptcp/mp_capable/v1_mp_capable_connect_no_cs.pkt | 4 ++-- 8 files changed, 18 insertions(+), 18 deletions(-) diff --git a/gtests/net/mptcp/add_addr/add_addr_client.pkt b/gtests/net/mptcp/add_addr/add_addr_client.pkt index 60eceed6..bdcb889d 100644 --- a/gtests/net/mptcp/add_addr/add_addr_client.pkt +++ b/gtests/net/mptcp/add_addr/add_addr_client.pkt @@ -13,8 +13,8 @@ +0.0 > S 0:0(0) +0.0 < S. 0:0(0) ack 1 win 65535 +0.0 > . 1:1(0) ack 1 -0.200 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0 -0.205 fcntl(3, F_SETFL, O_RDWR) = 0 // set back to blocking ++0.200 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0 ++0.205 fcntl(3, F_SETFL, O_RDWR) = 0 // set back to blocking +0.01 write(3,..., 100) = 100 +0.0 > P. 1:101(100) ack 1 diff --git a/gtests/net/mptcp/dss/dss_ssn_specified_client.pkt b/gtests/net/mptcp/dss/dss_ssn_specified_client.pkt index d3a1d8a6..55b52a07 100644 --- a/gtests/net/mptcp/dss/dss_ssn_specified_client.pkt +++ b/gtests/net/mptcp/dss/dss_ssn_specified_client.pkt @@ -14,13 +14,13 @@ +0.0 > S 0:0(0) +0.0 < S. 0:0(0) ack 1 win 65535 +0.0 > . 1:1(0) ack 1 -0.200 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0 -0.205 fcntl(3, F_SETFL, O_RDWR) = 0 // set back to blocking ++0.200 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0 ++0.205 fcntl(3, F_SETFL, O_RDWR) = 0 // set back to blocking +0.1 < P. 1:1001(1000) ack 1 win 450 +0.0 > . 1:1(0) ack 1001 -0.3 read(3, ..., 1000) = 1000 ++0.3 read(3, ..., 1000) = 1000 +0.0 write(3,..., 100) = 100 +0.0 > P. 1:101(100) ack 1001 -0.4 close(3) = 0 ++0.4 close(3) = 0 // SSN should be 0 for DATA-FIN packets carrying no data at all +0.0 > F. 101:101(0) ack 1001 diff --git a/gtests/net/mptcp/dss/dss_ssn_specified_server.pkt b/gtests/net/mptcp/dss/dss_ssn_specified_server.pkt index 84d0501e..212e1330 100644 --- a/gtests/net/mptcp/dss/dss_ssn_specified_server.pkt +++ b/gtests/net/mptcp/dss/dss_ssn_specified_server.pkt @@ -25,7 +25,7 @@ // read and ack 1 data segment +0 < P. 1:11(10) ack 2001 win 225 +0 > . 2001:2001(0) ack 11 -0.3 read(4, ..., 10) = 10 ++0.3 read(4, ..., 10) = 10 // send 1 more data segment, this time dack8 will have to be used: server sent dsn8 +0 write(4, ..., 1000) = 1000 diff --git a/gtests/net/mptcp/dss/mpc_with_data_client.pkt b/gtests/net/mptcp/dss/mpc_with_data_client.pkt index 41d733f8..30ed454d 100644 --- a/gtests/net/mptcp/dss/mpc_with_data_client.pkt +++ b/gtests/net/mptcp/dss/mpc_with_data_client.pkt @@ -14,11 +14,11 @@ +0.01 > S 0:0(0) +0.01 < S. 0:0(0) ack 1 win 65535 +0.01 > . 1:1(0) ack 1 -0.200 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0 -0.205 fcntl(3, F_SETFL, O_RDWR) = 0 // set back to blocking ++0.200 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0 ++0.205 fcntl(3, F_SETFL, O_RDWR) = 0 // set back to blocking // send 2 data segments and get them acked by packetdrill -0.3 write(3, ..., 1000) = 1000 ++0.3 write(3, ..., 1000) = 1000 +0.01 > P. 1:1001(1000) ack 1 +0.01 < . 1:1(0) ack 1001 win 225 +0.1 write(3, ..., 500) = 500 diff --git a/gtests/net/mptcp/mp_capable/v1_connect_tcpfallback_flagB.pkt b/gtests/net/mptcp/mp_capable/v1_connect_tcpfallback_flagB.pkt index 96cfc2a5..15dc1c2d 100644 --- a/gtests/net/mptcp/mp_capable/v1_connect_tcpfallback_flagB.pkt +++ b/gtests/net/mptcp/mp_capable/v1_connect_tcpfallback_flagB.pkt @@ -13,8 +13,8 @@ +0.0 > S 0:0(0) +0.0 < S. 0:0(0) ack 1 win 65535 +0.0 > . 1:1(0) ack 1 -0.200 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0 -0.200 fcntl(3, F_SETFL, O_RDWR) = 0 // set back to blocking ++0.200 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0 ++0.200 fcntl(3, F_SETFL, O_RDWR) = 0 // set back to blocking // ensure that traffic plane is functional and does not use DSS diff --git a/gtests/net/mptcp/mp_capable/v1_connect_tcpfallback_flagH.pkt b/gtests/net/mptcp/mp_capable/v1_connect_tcpfallback_flagH.pkt index 88c6cd91..befb8488 100644 --- a/gtests/net/mptcp/mp_capable/v1_connect_tcpfallback_flagH.pkt +++ b/gtests/net/mptcp/mp_capable/v1_connect_tcpfallback_flagH.pkt @@ -13,8 +13,8 @@ +0.0 > S 0:0(0) +0.0 < S. 0:0(0) ack 1 win 65535 +0.0 > . 1:1(0) ack 1 -0.200 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0 -0.200 fcntl(3, F_SETFL, O_RDWR) = 0 // set back to blocking ++0.200 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0 ++0.200 fcntl(3, F_SETFL, O_RDWR) = 0 // set back to blocking // ensure that traffic plane is functional and does not use DSS diff --git a/gtests/net/mptcp/mp_capable/v1_connect_tcpfallback_wrongver.pkt b/gtests/net/mptcp/mp_capable/v1_connect_tcpfallback_wrongver.pkt index 30d77afa..58f327ba 100644 --- a/gtests/net/mptcp/mp_capable/v1_connect_tcpfallback_wrongver.pkt +++ b/gtests/net/mptcp/mp_capable/v1_connect_tcpfallback_wrongver.pkt @@ -13,8 +13,8 @@ +0.0 > S 0:0(0) +0.0 < S. 0:0(0) ack 1 win 65535 +0.0 > . 1:1(0) ack 1 -0.200 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0 -0.200 fcntl(3, F_SETFL, O_RDWR) = 0 // set back to blocking ++0.200 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0 ++0.200 fcntl(3, F_SETFL, O_RDWR) = 0 // set back to blocking // ensure that traffic plane is functional and does not use DSS diff --git a/gtests/net/mptcp/mp_capable/v1_mp_capable_connect_no_cs.pkt b/gtests/net/mptcp/mp_capable/v1_mp_capable_connect_no_cs.pkt index f22bdd39..af8da1d0 100644 --- a/gtests/net/mptcp/mp_capable/v1_mp_capable_connect_no_cs.pkt +++ b/gtests/net/mptcp/mp_capable/v1_mp_capable_connect_no_cs.pkt @@ -13,5 +13,5 @@ +0.0 > S 0:0(0) +0.0 < S. 0:0(0) ack 1 win 65535 +0.0 > . 1:1(0) ack 1 -0.200 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0 -0.200 fcntl(3, F_SETFL, O_RDWR) = 0 // set back to blocking ++0.200 getsockopt(3, SOL_SOCKET, SO_ERROR, [0], [4]) = 0 ++0.200 fcntl(3, F_SETFL, O_RDWR) = 0 // set back to blocking