aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGeliang Tang <tanggeliang@kylinos.cn>2024-04-06 21:36:41 +0800
committerGeliang Tang <tanggeliang@kylinos.cn>2024-04-20 19:21:25 +0800
commit7f88de31a64fb954a1a2aa164c51a1cd059a5444 (patch)
treed37449acbfa6873c2ea01e46528831ee84d6a16c
parent52828eced92baaed52e180c5975f96620255e9c0 (diff)
downloadmptcp_net-next-7f88de31a64fb954a1a2aa164c51a1cd059a5444.tar.gz
Squash to "selftests/bpf: Add bpf scheduler test"
Use endpoint_init in sched_init and use _ss_search in has_bytes_sent. Signed-off-by: Geliang Tang <tanggeliang@kylinos.cn>
-rw-r--r--tools/testing/selftests/bpf/prog_tests/mptcp.c18
1 files changed, 6 insertions, 12 deletions
diff --git a/tools/testing/selftests/bpf/prog_tests/mptcp.c b/tools/testing/selftests/bpf/prog_tests/mptcp.c
index 307d4b36035060..10206f1d1157f2 100644
--- a/tools/testing/selftests/bpf/prog_tests/mptcp.c
+++ b/tools/testing/selftests/bpf/prog_tests/mptcp.c
@@ -532,28 +532,22 @@ static struct nstoken *sched_init(char *flags, char *sched)
nstoken = create_netns();
if (!ASSERT_OK_PTR(nstoken, "create_netns"))
+ return NULL;
+
+ if (!ASSERT_OK(endpoint_init("subflow"), "endpoint_init"))
goto fail;
- SYS(fail, "ip -net %s link add veth1 type veth peer name veth2", NS_TEST);
- SYS(fail, "ip -net %s addr add %s/24 dev veth1", NS_TEST, ADDR_1);
- SYS(fail, "ip -net %s link set dev veth1 up", NS_TEST);
- SYS(fail, "ip -net %s addr add %s/24 dev veth2", NS_TEST, ADDR_2);
- SYS(fail, "ip -net %s link set dev veth2 up", NS_TEST);
- SYS(fail, "ip -net %s mptcp endpoint add %s %s", NS_TEST, ADDR_2, flags);
SYS(fail, "ip netns exec %s sysctl -qw net.mptcp.scheduler=%s", NS_TEST, sched);
return nstoken;
fail:
+ cleanup_netns(nstoken);
return NULL;
}
-static int has_bytes_sent(char *addr)
+static int has_bytes_sent(char *dst)
{
- char cmd[128];
-
- snprintf(cmd, sizeof(cmd), "ip netns exec %s ss -it src %s sport %d dst %s | %s",
- NS_TEST, ADDR_1, PORT_1, addr, "grep -q bytes_sent:");
- return system(cmd);
+ return _ss_search(ADDR_1, dst, "sport", "bytes_sent:");
}
static void send_data_and_verify(char *sched, bool addr1, bool addr2)