diff options
author | Geliang Tang <tanggeliang@kylinos.cn> | 2024-04-06 21:36:41 +0800 |
---|---|---|
committer | Geliang Tang <tanggeliang@kylinos.cn> | 2024-04-20 19:21:25 +0800 |
commit | 7f88de31a64fb954a1a2aa164c51a1cd059a5444 (patch) | |
tree | d37449acbfa6873c2ea01e46528831ee84d6a16c | |
parent | 52828eced92baaed52e180c5975f96620255e9c0 (diff) | |
download | mptcp_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.c | 18 |
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) |