[PATCH mptcp-next] Squash to "selftests: bpf: verify ca_name of struct mptcp_sock"

Geliang Tang posted 1 patch 3 years, 4 months ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/multipath-tcp/mptcp_net-next tags/patchew/47419fbef3ed25bd1bb9d641e4817b85ea55ecda.1651329059.git.geliang.tang@suse.com
Maintainers: Yonghong Song <yhs@fb.com>, Andrii Nakryiko <andrii@kernel.org>, John Fastabend <john.fastabend@gmail.com>, Daniel Borkmann <daniel@iogearbox.net>, Mat Martineau <mathew.j.martineau@linux.intel.com>, Matthieu Baerts <matthieu.baerts@tessares.net>, Martin KaFai Lau <kafai@fb.com>, Alexei Starovoitov <ast@kernel.org>, Song Liu <songliubraving@fb.com>, Shuah Khan <shuah@kernel.org>, KP Singh <kpsingh@kernel.org>
There is a newer version of this series
.../testing/selftests/bpf/prog_tests/mptcp.c  | 20 ++++++++++++++++---
1 file changed, 17 insertions(+), 3 deletions(-)
[PATCH mptcp-next] Squash to "selftests: bpf: verify ca_name of struct mptcp_sock"
Posted by Geliang Tang 3 years, 4 months ago
Read /proc/sys/net/ipv4/tcp_congestion_control directly, instead of
using sysctl.

Signed-off-by: Geliang Tang <geliang.tang@suse.com>
---
 .../testing/selftests/bpf/prog_tests/mptcp.c  | 20 ++++++++++++++++---
 1 file changed, 17 insertions(+), 3 deletions(-)

diff --git a/tools/testing/selftests/bpf/prog_tests/mptcp.c b/tools/testing/selftests/bpf/prog_tests/mptcp.c
index 7e704f5aab05..ed5773c26045 100644
--- a/tools/testing/selftests/bpf/prog_tests/mptcp.c
+++ b/tools/testing/selftests/bpf/prog_tests/mptcp.c
@@ -88,12 +88,26 @@ static __u32 get_msk_token(void)
 
 void get_msk_ca_name(char ca_name[])
 {
-	FILE *stream = popen("sysctl -b net.ipv4.tcp_congestion_control", "r");
+	size_t len;
+	int fd;
+
+	fd = open("/proc/sys/net/ipv4/tcp_congestion_control", O_RDONLY);
+	if (CHECK_FAIL(fd < 0)) {
+		log_err("Failed to open tcp_congestion_control");
+		return;
+	}
 
-	if (!fgets(ca_name, TCP_CA_NAME_MAX, stream))
+	len = read(fd, ca_name, TCP_CA_NAME_MAX);
+	if (CHECK_FAIL(len < 0)) {
 		log_err("Failed to read ca_name");
+		goto err;
+	}
+
+	if (len > 0 && ca_name[len - 1] == '\n')
+		ca_name[len - 1] = '\0';
 
-	pclose(stream);
+err:
+	close(fd);
 }
 
 static int verify_msk(int map_fd, int client_fd)
-- 
2.34.1


Re: [PATCH mptcp-next] Squash to "selftests: bpf: verify ca_name of struct mptcp_sock"
Posted by Matthieu Baerts 3 years, 4 months ago
Hi Geliang,

On 30/04/2022 16:31, Geliang Tang wrote:
> Read /proc/sys/net/ipv4/tcp_congestion_control directly, instead of
> using sysctl.

Thank you for the patch!

Now in our tree:

- 7578ba9005cf: "squashed" in "selftests: bpf: verify ca_name of struct
mptcp_sock"
- Results: 8ae619c5e009..929d7e14ecf1 (export)


Builds and tests are now in progress:

https://cirrus-ci.com/github/multipath-tcp/mptcp_net-next/export/20220502T203959
https://github.com/multipath-tcp/mptcp_net-next/actions/workflows/build-validation.yml?query=branch:export

Cheers,
Matt
-- 
Tessares | Belgium | Hybrid Access Solutions
www.tessares.net