All of lore.kernel.org
 help / color / mirror / Atom feed
* [bpf-next 00/11] bpf/selftests: convert some tests to ASSERT_* macros
@ 2022-09-26  5:12 Wang Yufen
  2022-09-26  5:12 ` [bpf-next 01/11] bpf/selftests: convert sockmap_basic test " Wang Yufen
                   ` (12 more replies)
  0 siblings, 13 replies; 16+ messages in thread
From: Wang Yufen @ 2022-09-26  5:12 UTC (permalink / raw)
  To: ast, daniel, andrii, martin.lau, song, yhs, john.fastabend,
	kpsingh, sdf, haoluo, jolsa, mykolal, shuah, delyank, zhudi2,
	jakub, kuba, kuifeng, deso, zhuyifei, hengqi.chen
  Cc: bpf

Convert some tests to use the preferred ASSERT_* macros instead of the
deprecated CHECK().

Wang Yufen (11):
  bpf/selftests: convert sockmap_basic test to ASSERT_* macros
  bpf/selftests: convert sockmap_ktls test to ASSERT_* macros
  bpf/selftests: convert sockopt test to ASSERT_* macros
  bpf/selftests: convert sockopt_inherit test to ASSERT_* macros
  bpf/selftests: convert sockopt_multi test to ASSERT_* macros
  bpf/selftests: convert sockopt_sk test to ASSERT_* macros
  bpf/selftests: convert tcp_estats test to ASSERT_* macros
  bpf/selftests: convert tcp_hdr_options test to ASSERT_* macros
  bpf/selftests: convert tcp_rtt test to ASSERT_* macros
  bpf/selftests: convert tcpbpf_user test to ASSERT_* macros
  bpf/selftests: convert udp_limit test to ASSERT_* macros

 .../selftests/bpf/prog_tests/sockmap_basic.c       | 87 ++++++++--------------
 .../selftests/bpf/prog_tests/sockmap_ktls.c        | 39 +++-------
 tools/testing/selftests/bpf/prog_tests/sockopt.c   |  4 +-
 .../selftests/bpf/prog_tests/sockopt_inherit.c     | 30 ++++----
 .../selftests/bpf/prog_tests/sockopt_multi.c       | 10 +--
 .../testing/selftests/bpf/prog_tests/sockopt_sk.c  |  2 +-
 .../testing/selftests/bpf/prog_tests/tcp_estats.c  |  4 +-
 .../selftests/bpf/prog_tests/tcp_hdr_options.c     | 80 +++++++-------------
 tools/testing/selftests/bpf/prog_tests/tcp_rtt.c   | 13 ++--
 .../testing/selftests/bpf/prog_tests/tcpbpf_user.c | 32 +++-----
 tools/testing/selftests/bpf/prog_tests/udp_limit.c | 18 ++---
 11 files changed, 117 insertions(+), 202 deletions(-)

-- 
1.8.3.1


^ permalink raw reply	[flat|nested] 16+ messages in thread

* [bpf-next 01/11] bpf/selftests: convert sockmap_basic test to ASSERT_* macros
  2022-09-26  5:12 [bpf-next 00/11] bpf/selftests: convert some tests to ASSERT_* macros Wang Yufen
@ 2022-09-26  5:12 ` Wang Yufen
  2022-09-26  5:12 ` [bpf-next 02/11] bpf/selftests: convert sockmap_ktls " Wang Yufen
                   ` (11 subsequent siblings)
  12 siblings, 0 replies; 16+ messages in thread
From: Wang Yufen @ 2022-09-26  5:12 UTC (permalink / raw)
  To: ast, daniel, andrii, martin.lau, song, yhs, john.fastabend,
	kpsingh, sdf, haoluo, jolsa, mykolal, shuah, delyank, zhudi2,
	jakub, kuba, kuifeng, deso, zhuyifei, hengqi.chen
  Cc: bpf

Convert the selftest to use the preferred ASSERT_* macros instead of the
deprecated CHECK().

Signed-off-by: Wang Yufen <wangyufen@huawei.com>
---
 .../selftests/bpf/prog_tests/sockmap_basic.c       | 87 ++++++++--------------
 1 file changed, 33 insertions(+), 54 deletions(-)

diff --git a/tools/testing/selftests/bpf/prog_tests/sockmap_basic.c b/tools/testing/selftests/bpf/prog_tests/sockmap_basic.c
index cec5c08..c0d1dd0 100644
--- a/tools/testing/selftests/bpf/prog_tests/sockmap_basic.c
+++ b/tools/testing/selftests/bpf/prog_tests/sockmap_basic.c
@@ -27,21 +27,21 @@ static int connected_socket_v4(void)
 	int s, repair, err;
 
 	s = socket(AF_INET, SOCK_STREAM, 0);
-	if (CHECK_FAIL(s == -1))
+	if (!ASSERT_GE(s, 0, "socket"))
 		goto error;
 
 	repair = TCP_REPAIR_ON;
 	err = setsockopt(s, SOL_TCP, TCP_REPAIR, &repair, sizeof(repair));
-	if (CHECK_FAIL(err))
+	if (!ASSERT_OK(err, "setsockopt(TCP_REPAIR)"))
 		goto error;
 
 	err = connect(s, (struct sockaddr *)&addr, len);
-	if (CHECK_FAIL(err))
+	if (!ASSERT_OK(err, "connect"))
 		goto error;
 
 	repair = TCP_REPAIR_OFF_NO_WP;
 	err = setsockopt(s, SOL_TCP, TCP_REPAIR, &repair, sizeof(repair));
-	if (CHECK_FAIL(err))
+	if (!ASSERT_OK(err, "setsockopt(TCP_REPAIR)"))
 		goto error;
 
 	return s;
@@ -54,7 +54,7 @@ static int connected_socket_v4(void)
 static void compare_cookies(struct bpf_map *src, struct bpf_map *dst)
 {
 	__u32 i, max_entries = bpf_map__max_entries(src);
-	int err, duration = 0, src_fd, dst_fd;
+	int err, src_fd, dst_fd;
 
 	src_fd = bpf_map__fd(src);
 	dst_fd = bpf_map__fd(dst);
@@ -65,20 +65,18 @@ static void compare_cookies(struct bpf_map *src, struct bpf_map *dst)
 		err = bpf_map_lookup_elem(src_fd, &i, &src_cookie);
 		if (err && errno == ENOENT) {
 			err = bpf_map_lookup_elem(dst_fd, &i, &dst_cookie);
-			CHECK(!err, "map_lookup_elem(dst)", "element %u not deleted\n", i);
-			CHECK(err && errno != ENOENT, "map_lookup_elem(dst)", "%s\n",
-			      strerror(errno));
+			ASSERT_ERR(err, "map_lookup_elem(dst)");
+			ASSERT_OK(err && errno != ENOENT, "map_lookup_elem(dst)");
 			continue;
 		}
-		if (CHECK(err, "lookup_elem(src)", "%s\n", strerror(errno)))
+		if (!ASSERT_OK(err, "lookup_elem(src)"))
 			continue;
 
 		err = bpf_map_lookup_elem(dst_fd, &i, &dst_cookie);
-		if (CHECK(err, "lookup_elem(dst)", "%s\n", strerror(errno)))
+		if (!ASSERT_OK(err, "lookup_elem(dst)"))
 			continue;
 
-		CHECK(dst_cookie != src_cookie, "cookie mismatch",
-		      "%llu != %llu (pos %u)\n", dst_cookie, src_cookie, i);
+		ASSERT_EQ(dst_cookie, src_cookie, "cookie mismatch");
 	}
 }
 
@@ -89,20 +87,16 @@ static void test_sockmap_create_update_free(enum bpf_map_type map_type)
 	int s, map, err;
 
 	s = connected_socket_v4();
-	if (CHECK_FAIL(s < 0))
+	if (!ASSERT_GE(s, 0, "connected_socket_v4"))
 		return;
 
 	map = bpf_map_create(map_type, NULL, sizeof(int), sizeof(int), 1, NULL);
-	if (CHECK_FAIL(map < 0)) {
-		perror("bpf_cmap_create");
+	if (!ASSERT_GE(map, 0, "bpf_map_create"))
 		goto out;
-	}
 
 	err = bpf_map_update_elem(map, &zero, &s, BPF_NOEXIST);
-	if (CHECK_FAIL(err)) {
-		perror("bpf_map_update");
+	if (!ASSERT_OK(err, "bpf_map_update"))
 		goto out;
-	}
 
 out:
 	close(map);
@@ -115,32 +109,26 @@ static void test_skmsg_helpers(enum bpf_map_type map_type)
 	int err, map, verdict;
 
 	skel = test_skmsg_load_helpers__open_and_load();
-	if (CHECK_FAIL(!skel)) {
-		perror("test_skmsg_load_helpers__open_and_load");
+	if (!ASSERT_OK_PTR(skel, "test_skmsg_load_helpers__open_and_load"))
 		return;
-	}
 
 	verdict = bpf_program__fd(skel->progs.prog_msg_verdict);
 	map = bpf_map__fd(skel->maps.sock_map);
 
 	err = bpf_prog_attach(verdict, map, BPF_SK_MSG_VERDICT, 0);
-	if (CHECK_FAIL(err)) {
-		perror("bpf_prog_attach");
+	if (!ASSERT_OK(err, "bpf_prog_attach"))
 		goto out;
-	}
 
 	err = bpf_prog_detach2(verdict, map, BPF_SK_MSG_VERDICT);
-	if (CHECK_FAIL(err)) {
-		perror("bpf_prog_detach2");
+	if (!ASSERT_OK(err, "bpf_prog_detach2"))
 		goto out;
-	}
 out:
 	test_skmsg_load_helpers__destroy(skel);
 }
 
 static void test_sockmap_update(enum bpf_map_type map_type)
 {
-	int err, prog, src, duration = 0;
+	int err, prog, src;
 	struct test_sockmap_update *skel;
 	struct bpf_map *dst_map;
 	const __u32 zero = 0;
@@ -153,11 +141,11 @@ static void test_sockmap_update(enum bpf_map_type map_type)
 	__s64 sk;
 
 	sk = connected_socket_v4();
-	if (CHECK(sk == -1, "connected_socket_v4", "cannot connect\n"))
+	if (!ASSERT_NEQ(sk, -1, "connected_socket_v4"))
 		return;
 
 	skel = test_sockmap_update__open_and_load();
-	if (CHECK(!skel, "open_and_load", "cannot load skeleton\n"))
+	if (!ASSERT_OK_PTR(skel, "open_and_load"))
 		goto close_sk;
 
 	prog = bpf_program__fd(skel->progs.copy_sock_map);
@@ -168,7 +156,7 @@ static void test_sockmap_update(enum bpf_map_type map_type)
 		dst_map = skel->maps.dst_sock_hash;
 
 	err = bpf_map_update_elem(src, &zero, &sk, BPF_NOEXIST);
-	if (CHECK(err, "update_elem(src)", "errno=%u\n", errno))
+	if (!ASSERT_OK(err, "update_elem(src)"))
 		goto out;
 
 	err = bpf_prog_test_run_opts(prog, &topts);
@@ -188,17 +176,16 @@ static void test_sockmap_update(enum bpf_map_type map_type)
 static void test_sockmap_invalid_update(void)
 {
 	struct test_sockmap_invalid_update *skel;
-	int duration = 0;
 
 	skel = test_sockmap_invalid_update__open_and_load();
-	if (CHECK(skel, "open_and_load", "verifier accepted map_update\n"))
+	if (!ASSERT_NULL(skel, "open_and_load"))
 		test_sockmap_invalid_update__destroy(skel);
 }
 
 static void test_sockmap_copy(enum bpf_map_type map_type)
 {
 	DECLARE_LIBBPF_OPTS(bpf_iter_attach_opts, opts);
-	int err, len, src_fd, iter_fd, duration = 0;
+	int err, len, src_fd, iter_fd;
 	union bpf_iter_link_info linfo = {};
 	__u32 i, num_sockets, num_elems;
 	struct bpf_iter_sockmap *skel;
@@ -208,7 +195,7 @@ static void test_sockmap_copy(enum bpf_map_type map_type)
 	char buf[64];
 
 	skel = bpf_iter_sockmap__open_and_load();
-	if (CHECK(!skel, "bpf_iter_sockmap__open_and_load", "skeleton open_and_load failed\n"))
+	if (!ASSERT_OK_PTR(skel, "bpf_iter_sockmap__open_and_load"))
 		return;
 
 	if (map_type == BPF_MAP_TYPE_SOCKMAP) {
@@ -222,7 +209,7 @@ static void test_sockmap_copy(enum bpf_map_type map_type)
 	}
 
 	sock_fd = calloc(num_sockets, sizeof(*sock_fd));
-	if (CHECK(!sock_fd, "calloc(sock_fd)", "failed to allocate\n"))
+	if (!ASSERT_OK_PTR(sock_fd, "calloc(sock_fd)"))
 		goto out;
 
 	for (i = 0; i < num_sockets; i++)
@@ -232,11 +219,11 @@ static void test_sockmap_copy(enum bpf_map_type map_type)
 
 	for (i = 0; i < num_sockets; i++) {
 		sock_fd[i] = connected_socket_v4();
-		if (CHECK(sock_fd[i] == -1, "connected_socket_v4", "cannot connect\n"))
+		if (!ASSERT_NEQ(sock_fd[i], -1, "connected_socket_v4"))
 			goto out;
 
 		err = bpf_map_update_elem(src_fd, &i, &sock_fd[i], BPF_NOEXIST);
-		if (CHECK(err, "map_update", "failed: %s\n", strerror(errno)))
+		if (!ASSERT_OK(err, "map_update"))
 			goto out;
 	}
 
@@ -248,22 +235,20 @@ static void test_sockmap_copy(enum bpf_map_type map_type)
 		goto out;
 
 	iter_fd = bpf_iter_create(bpf_link__fd(link));
-	if (CHECK(iter_fd < 0, "create_iter", "create_iter failed\n"))
+	if (!ASSERT_GE(iter_fd, 0, "create_iter"))
 		goto free_link;
 
 	/* do some tests */
 	while ((len = read(iter_fd, buf, sizeof(buf))) > 0)
 		;
-	if (CHECK(len < 0, "read", "failed: %s\n", strerror(errno)))
+	if (!ASSERT_GE(len, 0, "read"))
 		goto close_iter;
 
 	/* test results */
-	if (CHECK(skel->bss->elems != num_elems, "elems", "got %u expected %u\n",
-		  skel->bss->elems, num_elems))
+	if (!ASSERT_EQ(skel->bss->elems, num_elems, "elems"))
 		goto close_iter;
 
-	if (CHECK(skel->bss->socks != num_sockets, "socks", "got %u expected %u\n",
-		  skel->bss->socks, num_sockets))
+	if (!ASSERT_EQ(skel->bss->socks, num_sockets, "socks"))
 		goto close_iter;
 
 	compare_cookies(src, skel->maps.dst);
@@ -288,28 +273,22 @@ static void test_sockmap_skb_verdict_attach(enum bpf_attach_type first,
 	int err, map, verdict;
 
 	skel = test_sockmap_skb_verdict_attach__open_and_load();
-	if (CHECK_FAIL(!skel)) {
-		perror("test_sockmap_skb_verdict_attach__open_and_load");
+	if (!ASSERT_OK_PTR(skel, "open_and_load"))
 		return;
-	}
 
 	verdict = bpf_program__fd(skel->progs.prog_skb_verdict);
 	map = bpf_map__fd(skel->maps.sock_map);
 
 	err = bpf_prog_attach(verdict, map, first, 0);
-	if (CHECK_FAIL(err)) {
-		perror("bpf_prog_attach");
+	if (!ASSERT_OK(err, "bpf_prog_attach"))
 		goto out;
-	}
 
 	err = bpf_prog_attach(verdict, map, second, 0);
 	ASSERT_EQ(err, -EBUSY, "prog_attach_fail");
 
 	err = bpf_prog_detach2(verdict, map, first);
-	if (CHECK_FAIL(err)) {
-		perror("bpf_prog_detach2");
+	if (!ASSERT_OK(err, "bpf_prog_detach2"))
 		goto out;
-	}
 out:
 	test_sockmap_skb_verdict_attach__destroy(skel);
 }
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [bpf-next 02/11] bpf/selftests: convert sockmap_ktls test to ASSERT_* macros
  2022-09-26  5:12 [bpf-next 00/11] bpf/selftests: convert some tests to ASSERT_* macros Wang Yufen
  2022-09-26  5:12 ` [bpf-next 01/11] bpf/selftests: convert sockmap_basic test " Wang Yufen
@ 2022-09-26  5:12 ` Wang Yufen
  2022-09-26  5:12 ` [bpf-next 03/11] bpf/selftests: convert sockopt " Wang Yufen
                   ` (10 subsequent siblings)
  12 siblings, 0 replies; 16+ messages in thread
From: Wang Yufen @ 2022-09-26  5:12 UTC (permalink / raw)
  To: ast, daniel, andrii, martin.lau, song, yhs, john.fastabend,
	kpsingh, sdf, haoluo, jolsa, mykolal, shuah, delyank, zhudi2,
	jakub, kuba, kuifeng, deso, zhuyifei, hengqi.chen
  Cc: bpf

Convert the selftest to use the preferred ASSERT_* macros instead of the
deprecated CHECK().

Signed-off-by: Wang Yufen <wangyufen@huawei.com>
---
 .../selftests/bpf/prog_tests/sockmap_ktls.c        | 39 ++++++----------------
 1 file changed, 10 insertions(+), 29 deletions(-)

diff --git a/tools/testing/selftests/bpf/prog_tests/sockmap_ktls.c b/tools/testing/selftests/bpf/prog_tests/sockmap_ktls.c
index e172d89..2d07963 100644
--- a/tools/testing/selftests/bpf/prog_tests/sockmap_ktls.c
+++ b/tools/testing/selftests/bpf/prog_tests/sockmap_ktls.c
@@ -15,16 +15,12 @@ static int tcp_server(int family)
 	int err, s;
 
 	s = socket(family, SOCK_STREAM, 0);
-	if (CHECK_FAIL(s == -1)) {
-		perror("socket");
+	if (!ASSERT_GE(s, 0, "socket"))
 		return -1;
-	}
 
 	err = listen(s, SOMAXCONN);
-	if (CHECK_FAIL(err)) {
-		perror("listen");
+	if (!ASSERT_OK(err, "listen"))
 		return -1;
-	}
 
 	return s;
 }
@@ -48,44 +44,31 @@ static void test_sockmap_ktls_disconnect_after_delete(int family, int map)
 		return;
 
 	err = getsockname(srv, (struct sockaddr *)&addr, &len);
-	if (CHECK_FAIL(err)) {
-		perror("getsockopt");
+	if (!ASSERT_OK(err, "getsockopt"))
 		goto close_srv;
-	}
 
 	cli = socket(family, SOCK_STREAM, 0);
-	if (CHECK_FAIL(cli == -1)) {
-		perror("socket");
+	if (!ASSERT_GE(cli, 0, "socket"))
 		goto close_srv;
-	}
 
 	err = connect(cli, (struct sockaddr *)&addr, len);
-	if (CHECK_FAIL(err)) {
-		perror("connect");
+	if (!ASSERT_OK(err, "connect"))
 		goto close_cli;
-	}
 
 	err = bpf_map_update_elem(map, &zero, &cli, 0);
-	if (CHECK_FAIL(err)) {
-		perror("bpf_map_update_elem");
+	if (!ASSERT_OK(err, "bpf_map_update_elem"))
 		goto close_cli;
-	}
 
 	err = setsockopt(cli, IPPROTO_TCP, TCP_ULP, "tls", strlen("tls"));
-	if (CHECK_FAIL(err)) {
-		perror("setsockopt(TCP_ULP)");
+	if (!ASSERT_OK(err, "setsockopt(TCP_ULP)"))
 		goto close_cli;
-	}
 
 	err = bpf_map_delete_elem(map, &zero);
-	if (CHECK_FAIL(err)) {
-		perror("bpf_map_delete_elem");
+	if (!ASSERT_OK(err, "bpf_map_delete_elem"))
 		goto close_cli;
-	}
 
 	err = disconnect(cli);
-	if (CHECK_FAIL(err))
-		perror("disconnect");
+	ASSERT_OK(err, "disconnect");
 
 close_cli:
 	close(cli);
@@ -168,10 +151,8 @@ static void run_tests(int family, enum bpf_map_type map_type)
 	int map;
 
 	map = bpf_map_create(map_type, NULL, sizeof(int), sizeof(int), 1, NULL);
-	if (CHECK_FAIL(map < 0)) {
-		perror("bpf_map_create");
+	if (!ASSERT_GE(map, 0, "bpf_map_create"))
 		return;
-	}
 
 	if (test__start_subtest(fmt_test_name("disconnect_after_delete", family, map_type)))
 		test_sockmap_ktls_disconnect_after_delete(family, map);
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [bpf-next 03/11] bpf/selftests: convert sockopt test to ASSERT_* macros
  2022-09-26  5:12 [bpf-next 00/11] bpf/selftests: convert some tests to ASSERT_* macros Wang Yufen
  2022-09-26  5:12 ` [bpf-next 01/11] bpf/selftests: convert sockmap_basic test " Wang Yufen
  2022-09-26  5:12 ` [bpf-next 02/11] bpf/selftests: convert sockmap_ktls " Wang Yufen
@ 2022-09-26  5:12 ` Wang Yufen
  2022-09-26  5:12 ` [bpf-next 04/11] bpf/selftests: convert sockopt_inherit " Wang Yufen
                   ` (9 subsequent siblings)
  12 siblings, 0 replies; 16+ messages in thread
From: Wang Yufen @ 2022-09-26  5:12 UTC (permalink / raw)
  To: ast, daniel, andrii, martin.lau, song, yhs, john.fastabend,
	kpsingh, sdf, haoluo, jolsa, mykolal, shuah, delyank, zhudi2,
	jakub, kuba, kuifeng, deso, zhuyifei, hengqi.chen
  Cc: bpf

Convert the selftest to use the preferred ASSERT_* macros instead of the
deprecated CHECK().

Signed-off-by: Wang Yufen <wangyufen@huawei.com>
---
 tools/testing/selftests/bpf/prog_tests/sockopt.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tools/testing/selftests/bpf/prog_tests/sockopt.c b/tools/testing/selftests/bpf/prog_tests/sockopt.c
index cd09f4c..aa4debf6 100644
--- a/tools/testing/selftests/bpf/prog_tests/sockopt.c
+++ b/tools/testing/selftests/bpf/prog_tests/sockopt.c
@@ -972,12 +972,12 @@ void test_sockopt(void)
 	int cgroup_fd, i;
 
 	cgroup_fd = test__join_cgroup("/sockopt");
-	if (CHECK_FAIL(cgroup_fd < 0))
+	if (!ASSERT_GE(cgroup_fd, 0, "join_cgroup"))
 		return;
 
 	for (i = 0; i < ARRAY_SIZE(tests); i++) {
 		test__start_subtest(tests[i].descr);
-		CHECK_FAIL(run_test(cgroup_fd, &tests[i]));
+		ASSERT_OK(run_test(cgroup_fd, &tests[i]), tests[i].descr);
 	}
 
 	close(cgroup_fd);
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [bpf-next 04/11] bpf/selftests: convert sockopt_inherit test to ASSERT_* macros
  2022-09-26  5:12 [bpf-next 00/11] bpf/selftests: convert some tests to ASSERT_* macros Wang Yufen
                   ` (2 preceding siblings ...)
  2022-09-26  5:12 ` [bpf-next 03/11] bpf/selftests: convert sockopt " Wang Yufen
@ 2022-09-26  5:12 ` Wang Yufen
  2022-09-26  5:12 ` [bpf-next 05/11] bpf/selftests: convert sockopt_multi " Wang Yufen
                   ` (8 subsequent siblings)
  12 siblings, 0 replies; 16+ messages in thread
From: Wang Yufen @ 2022-09-26  5:12 UTC (permalink / raw)
  To: ast, daniel, andrii, martin.lau, song, yhs, john.fastabend,
	kpsingh, sdf, haoluo, jolsa, mykolal, shuah, delyank, zhudi2,
	jakub, kuba, kuifeng, deso, zhuyifei, hengqi.chen
  Cc: bpf

Convert the selftest to use the preferred ASSERT_* macros instead of the
deprecated CHECK().

Signed-off-by: Wang Yufen <wangyufen@huawei.com>
---
 .../selftests/bpf/prog_tests/sockopt_inherit.c     | 30 ++++++++++------------
 1 file changed, 13 insertions(+), 17 deletions(-)

diff --git a/tools/testing/selftests/bpf/prog_tests/sockopt_inherit.c b/tools/testing/selftests/bpf/prog_tests/sockopt_inherit.c
index c5cb6e8..2e853da8 100644
--- a/tools/testing/selftests/bpf/prog_tests/sockopt_inherit.c
+++ b/tools/testing/selftests/bpf/prog_tests/sockopt_inherit.c
@@ -76,20 +76,16 @@ static void *server_thread(void *arg)
 	pthread_cond_signal(&server_started);
 	pthread_mutex_unlock(&server_started_mtx);
 
-	if (CHECK_FAIL(err < 0)) {
-		perror("Failed to listed on socket");
+	if (!ASSERT_GE(err, 0, "listed on socket"))
 		return NULL;
-	}
 
 	err += verify_sockopt(fd, CUSTOM_INHERIT1, "listen", 1);
 	err += verify_sockopt(fd, CUSTOM_INHERIT2, "listen", 1);
 	err += verify_sockopt(fd, CUSTOM_LISTENER, "listen", 1);
 
 	client_fd = accept(fd, (struct sockaddr *)&addr, &len);
-	if (CHECK_FAIL(client_fd < 0)) {
-		perror("Failed to accept client");
+	if (!ASSERT_GE(client_fd, 0, "accept client"))
 		return NULL;
-	}
 
 	err += verify_sockopt(client_fd, CUSTOM_INHERIT1, "accept", 1);
 	err += verify_sockopt(client_fd, CUSTOM_INHERIT2, "accept", 1);
@@ -183,20 +179,20 @@ static void run_test(int cgroup_fd)
 		goto close_bpf_object;
 
 	err = prog_attach(obj, cgroup_fd, "cgroup/getsockopt", "_getsockopt");
-	if (CHECK_FAIL(err))
+	if (!ASSERT_OK(err, "prog_attach _getsockopt"))
 		goto close_bpf_object;
 
 	err = prog_attach(obj, cgroup_fd, "cgroup/setsockopt", "_setsockopt");
-	if (CHECK_FAIL(err))
+	if (!ASSERT_OK(err, "prog_attach _setsockopt"))
 		goto close_bpf_object;
 
 	server_fd = start_server();
-	if (CHECK_FAIL(server_fd < 0))
+	if (!ASSERT_GE(server_fd, 0, "start_server"))
 		goto close_bpf_object;
 
 	pthread_mutex_lock(&server_started_mtx);
-	if (CHECK_FAIL(pthread_create(&tid, NULL, server_thread,
-				      (void *)&server_fd))) {
+	if (!ASSERT_OK(pthread_create(&tid, NULL, server_thread,
+				      (void *)&server_fd), "pthread_create")) {
 		pthread_mutex_unlock(&server_started_mtx);
 		goto close_server_fd;
 	}
@@ -204,17 +200,17 @@ static void run_test(int cgroup_fd)
 	pthread_mutex_unlock(&server_started_mtx);
 
 	client_fd = connect_to_server(server_fd);
-	if (CHECK_FAIL(client_fd < 0))
+	if (!ASSERT_GE(client_fd, 0, "connect_to_server"))
 		goto close_server_fd;
 
-	CHECK_FAIL(verify_sockopt(client_fd, CUSTOM_INHERIT1, "connect", 0));
-	CHECK_FAIL(verify_sockopt(client_fd, CUSTOM_INHERIT2, "connect", 0));
-	CHECK_FAIL(verify_sockopt(client_fd, CUSTOM_LISTENER, "connect", 0));
+	ASSERT_OK(verify_sockopt(client_fd, CUSTOM_INHERIT1, "connect", 0), "verify_sockopt1");
+	ASSERT_OK(verify_sockopt(client_fd, CUSTOM_INHERIT2, "connect", 0), "verify_sockopt2");
+	ASSERT_OK(verify_sockopt(client_fd, CUSTOM_LISTENER, "connect", 0), "verify_sockopt ener");
 
 	pthread_join(tid, &server_err);
 
 	err = (int)(long)server_err;
-	CHECK_FAIL(err);
+	ASSERT_OK(err, "pthread_join retval");
 
 	close(client_fd);
 
@@ -229,7 +225,7 @@ void test_sockopt_inherit(void)
 	int cgroup_fd;
 
 	cgroup_fd = test__join_cgroup("/sockopt_inherit");
-	if (CHECK_FAIL(cgroup_fd < 0))
+	if (!ASSERT_GE(cgroup_fd, 0, "join_cgroup"))
 		return;
 
 	run_test(cgroup_fd);
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [bpf-next 05/11] bpf/selftests: convert sockopt_multi test to ASSERT_* macros
  2022-09-26  5:12 [bpf-next 00/11] bpf/selftests: convert some tests to ASSERT_* macros Wang Yufen
                   ` (3 preceding siblings ...)
  2022-09-26  5:12 ` [bpf-next 04/11] bpf/selftests: convert sockopt_inherit " Wang Yufen
@ 2022-09-26  5:12 ` Wang Yufen
  2022-09-26  5:12 ` [bpf-next 06/11] bpf/selftests: convert sockopt_sk " Wang Yufen
                   ` (7 subsequent siblings)
  12 siblings, 0 replies; 16+ messages in thread
From: Wang Yufen @ 2022-09-26  5:12 UTC (permalink / raw)
  To: ast, daniel, andrii, martin.lau, song, yhs, john.fastabend,
	kpsingh, sdf, haoluo, jolsa, mykolal, shuah, delyank, zhudi2,
	jakub, kuba, kuifeng, deso, zhuyifei, hengqi.chen
  Cc: bpf

Convert the selftest to use the preferred ASSERT_* macros instead of the
deprecated CHECK().

Signed-off-by: Wang Yufen <wangyufen@huawei.com>
---
 tools/testing/selftests/bpf/prog_tests/sockopt_multi.c | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/tools/testing/selftests/bpf/prog_tests/sockopt_multi.c b/tools/testing/selftests/bpf/prog_tests/sockopt_multi.c
index 28d592dc..7f56593 100644
--- a/tools/testing/selftests/bpf/prog_tests/sockopt_multi.c
+++ b/tools/testing/selftests/bpf/prog_tests/sockopt_multi.c
@@ -303,11 +303,11 @@ void test_sockopt_multi(void)
 	int err = -1;
 
 	cg_parent = test__join_cgroup("/parent");
-	if (CHECK_FAIL(cg_parent < 0))
+	if (!ASSERT_GE(cg_parent, 0, "join_cgroup /parent"))
 		goto out;
 
 	cg_child = test__join_cgroup("/parent/child");
-	if (CHECK_FAIL(cg_child < 0))
+	if (!ASSERT_GE(cg_child, 0, "join_cgroup /parent/child"))
 		goto out;
 
 	obj = bpf_object__open_file("sockopt_multi.bpf.o", NULL);
@@ -319,11 +319,11 @@ void test_sockopt_multi(void)
 		goto out;
 
 	sock_fd = socket(AF_INET, SOCK_STREAM, 0);
-	if (CHECK_FAIL(sock_fd < 0))
+	if (!ASSERT_GE(sock_fd, 0, "socket"))
 		goto out;
 
-	CHECK_FAIL(run_getsockopt_test(obj, cg_parent, cg_child, sock_fd));
-	CHECK_FAIL(run_setsockopt_test(obj, cg_parent, cg_child, sock_fd));
+	ASSERT_OK(run_getsockopt_test(obj, cg_parent, cg_child, sock_fd), "getsockopt_test");
+	ASSERT_OK(run_setsockopt_test(obj, cg_parent, cg_child, sock_fd), "setsockopt_test");
 
 out:
 	close(sock_fd);
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [bpf-next 06/11] bpf/selftests: convert sockopt_sk test to ASSERT_* macros
  2022-09-26  5:12 [bpf-next 00/11] bpf/selftests: convert some tests to ASSERT_* macros Wang Yufen
                   ` (4 preceding siblings ...)
  2022-09-26  5:12 ` [bpf-next 05/11] bpf/selftests: convert sockopt_multi " Wang Yufen
@ 2022-09-26  5:12 ` Wang Yufen
  2022-09-26  5:12 ` [bpf-next 07/11] bpf/selftests: convert tcp_estats " Wang Yufen
                   ` (6 subsequent siblings)
  12 siblings, 0 replies; 16+ messages in thread
From: Wang Yufen @ 2022-09-26  5:12 UTC (permalink / raw)
  To: ast, daniel, andrii, martin.lau, song, yhs, john.fastabend,
	kpsingh, sdf, haoluo, jolsa, mykolal, shuah, delyank, zhudi2,
	jakub, kuba, kuifeng, deso, zhuyifei, hengqi.chen
  Cc: bpf

Convert the selftest to use the preferred ASSERT_* macros instead of the
deprecated CHECK().

Signed-off-by: Wang Yufen <wangyufen@huawei.com>
---
 tools/testing/selftests/bpf/prog_tests/sockopt_sk.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/testing/selftests/bpf/prog_tests/sockopt_sk.c b/tools/testing/selftests/bpf/prog_tests/sockopt_sk.c
index 30a99d2..60d9527 100644
--- a/tools/testing/selftests/bpf/prog_tests/sockopt_sk.c
+++ b/tools/testing/selftests/bpf/prog_tests/sockopt_sk.c
@@ -223,7 +223,7 @@ void test_sockopt_sk(void)
 	int cgroup_fd;
 
 	cgroup_fd = test__join_cgroup("/sockopt_sk");
-	if (CHECK_FAIL(cgroup_fd < 0))
+	if (!ASSERT_GE(cgroup_fd, 0, "join_cgroup /sockopt_sk"))
 		return;
 
 	run_test(cgroup_fd);
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [bpf-next 07/11] bpf/selftests: convert tcp_estats test to ASSERT_* macros
  2022-09-26  5:12 [bpf-next 00/11] bpf/selftests: convert some tests to ASSERT_* macros Wang Yufen
                   ` (5 preceding siblings ...)
  2022-09-26  5:12 ` [bpf-next 06/11] bpf/selftests: convert sockopt_sk " Wang Yufen
@ 2022-09-26  5:12 ` Wang Yufen
  2022-09-26  5:12 ` [bpf-next 08/11] bpf/selftests: convert tcp_hdr_options " Wang Yufen
                   ` (5 subsequent siblings)
  12 siblings, 0 replies; 16+ messages in thread
From: Wang Yufen @ 2022-09-26  5:12 UTC (permalink / raw)
  To: ast, daniel, andrii, martin.lau, song, yhs, john.fastabend,
	kpsingh, sdf, haoluo, jolsa, mykolal, shuah, delyank, zhudi2,
	jakub, kuba, kuifeng, deso, zhuyifei, hengqi.chen
  Cc: bpf

Convert the selftest to use the preferred ASSERT_* macros instead of the
deprecated CHECK().

Signed-off-by: Wang Yufen <wangyufen@huawei.com>
---
 tools/testing/selftests/bpf/prog_tests/tcp_estats.c | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/tools/testing/selftests/bpf/prog_tests/tcp_estats.c b/tools/testing/selftests/bpf/prog_tests/tcp_estats.c
index 032dbfb..e070bca 100644
--- a/tools/testing/selftests/bpf/prog_tests/tcp_estats.c
+++ b/tools/testing/selftests/bpf/prog_tests/tcp_estats.c
@@ -6,11 +6,9 @@ void test_tcp_estats(void)
 	const char *file = "./test_tcp_estats.bpf.o";
 	int err, prog_fd;
 	struct bpf_object *obj;
-	__u32 duration = 0;
 
 	err = bpf_prog_test_load(file, BPF_PROG_TYPE_TRACEPOINT, &obj, &prog_fd);
-	CHECK(err, "", "err %d errno %d\n", err, errno);
-	if (err)
+	if (!ASSERT_OK(err, ""))
 		return;
 
 	bpf_object__close(obj);
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [bpf-next 08/11] bpf/selftests: convert tcp_hdr_options test to ASSERT_* macros
  2022-09-26  5:12 [bpf-next 00/11] bpf/selftests: convert some tests to ASSERT_* macros Wang Yufen
                   ` (6 preceding siblings ...)
  2022-09-26  5:12 ` [bpf-next 07/11] bpf/selftests: convert tcp_estats " Wang Yufen
@ 2022-09-26  5:12 ` Wang Yufen
  2022-11-04  1:29   ` Martin KaFai Lau
  2022-09-26  5:12 ` [bpf-next 09/11] bpf/selftests: convert tcp_rtt " Wang Yufen
                   ` (4 subsequent siblings)
  12 siblings, 1 reply; 16+ messages in thread
From: Wang Yufen @ 2022-09-26  5:12 UTC (permalink / raw)
  To: ast, daniel, andrii, martin.lau, song, yhs, john.fastabend,
	kpsingh, sdf, haoluo, jolsa, mykolal, shuah, delyank, zhudi2,
	jakub, kuba, kuifeng, deso, zhuyifei, hengqi.chen
  Cc: bpf

Convert the selftest to use the preferred ASSERT_* macros instead of the
deprecated CHECK().

Signed-off-by: Wang Yufen <wangyufen@huawei.com>
---
 .../selftests/bpf/prog_tests/tcp_hdr_options.c     | 80 ++++++++--------------
 1 file changed, 28 insertions(+), 52 deletions(-)

diff --git a/tools/testing/selftests/bpf/prog_tests/tcp_hdr_options.c b/tools/testing/selftests/bpf/prog_tests/tcp_hdr_options.c
index f24436d..617bbce 100644
--- a/tools/testing/selftests/bpf/prog_tests/tcp_hdr_options.c
+++ b/tools/testing/selftests/bpf/prog_tests/tcp_hdr_options.c
@@ -42,13 +42,10 @@ struct sk_fds {
 
 static int create_netns(void)
 {
-	if (CHECK(unshare(CLONE_NEWNET), "create netns",
-		  "unshare(CLONE_NEWNET): %s (%d)",
-		  strerror(errno), errno))
+	if (!ASSERT_OK(unshare(CLONE_NEWNET), "create netns"))
 		return -1;
 
-	if (CHECK(system("ip link set dev lo up"), "run ip cmd",
-		  "failed to bring lo link up\n"))
+	if (!ASSERT_OK(system("ip link set dev lo up"), "run ip cmd"))
 		return -1;
 
 	return 0;
@@ -80,16 +77,12 @@ static int sk_fds_shutdown(struct sk_fds *sk_fds)
 
 	shutdown(sk_fds->active_fd, SHUT_WR);
 	ret = read(sk_fds->passive_fd, &abyte, sizeof(abyte));
-	if (CHECK(ret != 0, "read-after-shutdown(passive_fd):",
-		  "ret:%d %s (%d)\n",
-		  ret, strerror(errno), errno))
+	if (!ASSERT_EQ(ret, 0, "read-after-shutdown(passive_fd):"))
 		return -1;
 
 	shutdown(sk_fds->passive_fd, SHUT_WR);
 	ret = read(sk_fds->active_fd, &abyte, sizeof(abyte));
-	if (CHECK(ret != 0, "read-after-shutdown(active_fd):",
-		  "ret:%d %s (%d)\n",
-		  ret, strerror(errno), errno))
+	if (!ASSERT_EQ(ret, 0, "read-after-shutdown(active_fd):"))
 		return -1;
 
 	return 0;
@@ -102,8 +95,7 @@ static int sk_fds_connect(struct sk_fds *sk_fds, bool fast_open)
 	socklen_t len;
 
 	sk_fds->srv_fd = start_server(AF_INET6, SOCK_STREAM, LO_ADDR6, 0, 0);
-	if (CHECK(sk_fds->srv_fd == -1, "start_server", "%s (%d)\n",
-		  strerror(errno), errno))
+	if (!ASSERT_NEQ(sk_fds->srv_fd, -1, "start_server"))
 		goto error;
 
 	if (fast_open)
@@ -112,28 +104,25 @@ static int sk_fds_connect(struct sk_fds *sk_fds, bool fast_open)
 	else
 		sk_fds->active_fd = connect_to_fd(sk_fds->srv_fd, 0);
 
-	if (CHECK_FAIL(sk_fds->active_fd == -1)) {
+	if (!ASSERT_NEQ(sk_fds->active_fd, -1, "")) {
 		close(sk_fds->srv_fd);
 		goto error;
 	}
 
 	len = sizeof(addr6);
-	if (CHECK(getsockname(sk_fds->srv_fd, (struct sockaddr *)&addr6,
-			      &len), "getsockname(srv_fd)", "%s (%d)\n",
-		  strerror(errno), errno))
+	if (!ASSERT_OK(getsockname(sk_fds->srv_fd, (struct sockaddr *)&addr6,
+				   &len), "getsockname(srv_fd)"))
 		goto error_close;
 	sk_fds->passive_lport = ntohs(addr6.sin6_port);
 
 	len = sizeof(addr6);
-	if (CHECK(getsockname(sk_fds->active_fd, (struct sockaddr *)&addr6,
-			      &len), "getsockname(active_fd)", "%s (%d)\n",
-		  strerror(errno), errno))
+	if (!ASSERT_OK(getsockname(sk_fds->active_fd, (struct sockaddr *)&addr6,
+				   &len), "getsockname(active_fd)"))
 		goto error_close;
 	sk_fds->active_lport = ntohs(addr6.sin6_port);
 
 	sk_fds->passive_fd = accept(sk_fds->srv_fd, NULL, 0);
-	if (CHECK(sk_fds->passive_fd == -1, "accept(srv_fd)", "%s (%d)\n",
-		  strerror(errno), errno))
+	if (!ASSERT_NEQ(sk_fds->passive_fd, -1, "accept(srv_fd)"))
 		goto error_close;
 
 	if (fast_open) {
@@ -141,8 +130,7 @@ static int sk_fds_connect(struct sk_fds *sk_fds, bool fast_open)
 		int ret;
 
 		ret = read(sk_fds->passive_fd, bytes_in, sizeof(bytes_in));
-		if (CHECK(ret != sizeof(fast), "read fastopen syn data",
-			  "expected=%lu actual=%d\n", sizeof(fast), ret)) {
+		if (!ASSERT_EQ(ret, sizeof(fast), "read fastopen syn data")) {
 			close(sk_fds->passive_fd);
 			goto error_close;
 		}
@@ -163,8 +151,7 @@ static int check_hdr_opt(const struct bpf_test_option *exp,
 			 const struct bpf_test_option *act,
 			 const char *hdr_desc)
 {
-	if (CHECK(memcmp(exp, act, sizeof(*exp)),
-		  "expected-vs-actual", "unexpected %s\n", hdr_desc)) {
+	if (!ASSERT_OK(memcmp(exp, act, sizeof(*exp)), hdr_desc)) {
 		print_option(exp, "expected: ");
 		print_option(act, "  actual: ");
 		return -1;
@@ -178,13 +165,11 @@ static int check_hdr_stg(const struct hdr_stg *exp, int fd,
 {
 	struct hdr_stg act;
 
-	if (CHECK(bpf_map_lookup_elem(hdr_stg_map_fd, &fd, &act),
-		  "map_lookup(hdr_stg_map_fd)", "%s %s (%d)\n",
-		  stg_desc, strerror(errno), errno))
+	if (!ASSERT_OK(bpf_map_lookup_elem(hdr_stg_map_fd, &fd, &act),
+		  "map_lookup(hdr_stg_map_fd)"))
 		return -1;
 
-	if (CHECK(memcmp(exp, &act, sizeof(*exp)),
-		  "expected-vs-actual", "unexpected %s\n", stg_desc)) {
+	if (!ASSERT_OK(memcmp(exp, &act, sizeof(*exp)), stg_desc)) {
 		print_hdr_stg(exp, "expected: ");
 		print_hdr_stg(&act, "  actual: ");
 		return -1;
@@ -228,9 +213,8 @@ static void check_hdr_and_close_fds(struct sk_fds *sk_fds)
 	if (sk_fds_shutdown(sk_fds))
 		goto check_linum;
 
-	if (CHECK(expected_inherit_cb_flags != skel->bss->inherit_cb_flags,
-		  "Unexpected inherit_cb_flags", "0x%x != 0x%x\n",
-		  skel->bss->inherit_cb_flags, expected_inherit_cb_flags))
+	if (!ASSERT_EQ(expected_inherit_cb_flags, skel->bss->inherit_cb_flags,
+		       "inherit_cb_flags"))
 		goto check_linum;
 
 	if (check_hdr_stg(&exp_passive_hdr_stg, sk_fds->passive_fd,
@@ -257,7 +241,7 @@ static void check_hdr_and_close_fds(struct sk_fds *sk_fds)
 		      "active_fin_in");
 
 check_linum:
-	CHECK_FAIL(check_error_linum(sk_fds));
+	ASSERT_FALSE(check_error_linum(sk_fds), "check_error_linum");
 	sk_fds_close(sk_fds);
 }
 
@@ -497,26 +481,20 @@ static void misc(void)
 		/* MSG_EOR to ensure skb will not be combined */
 		ret = send(sk_fds.active_fd, send_msg, sizeof(send_msg),
 			   MSG_EOR);
-		if (CHECK(ret != sizeof(send_msg), "send(msg)", "ret:%d\n",
-			  ret))
+		if (!ASSERT_EQ(ret, sizeof(send_msg), "send(msg)"))
 			goto check_linum;
 
 		ret = read(sk_fds.passive_fd, recv_msg, sizeof(recv_msg));
-		if (CHECK(ret != sizeof(send_msg), "read(msg)", "ret:%d\n",
-			  ret))
+		if (ASSERT_EQ(ret, sizeof(send_msg), "read(msg)"))
 			goto check_linum;
 	}
 
 	if (sk_fds_shutdown(&sk_fds))
 		goto check_linum;
 
-	CHECK(misc_skel->bss->nr_syn != 1, "unexpected nr_syn",
-	      "expected (1) != actual (%u)\n",
-		misc_skel->bss->nr_syn);
+	ASSERT_EQ(misc_skel->bss->nr_syn, 1, "unexpected nr_syn");
 
-	CHECK(misc_skel->bss->nr_data != nr_data, "unexpected nr_data",
-	      "expected (%u) != actual (%u)\n",
-	      nr_data, misc_skel->bss->nr_data);
+	ASSERT_EQ(misc_skel->bss->nr_data, nr_data, "unexpected nr_data");
 
 	/* The last ACK may have been delayed, so it is either 1 or 2. */
 	CHECK(misc_skel->bss->nr_pure_ack != 1 &&
@@ -525,12 +503,10 @@ static void misc(void)
 	      "expected (1 or 2) != actual (%u)\n",
 		misc_skel->bss->nr_pure_ack);
 
-	CHECK(misc_skel->bss->nr_fin != 1, "unexpected nr_fin",
-	      "expected (1) != actual (%u)\n",
-	      misc_skel->bss->nr_fin);
+	ASSERT_EQ(misc_skel->bss->nr_fin, 1, "unexpected nr_fin");
 
 check_linum:
-	CHECK_FAIL(check_error_linum(&sk_fds));
+	ASSERT_FALSE(check_error_linum(&sk_fds), "check_error_linum");
 	sk_fds_close(&sk_fds);
 	bpf_link__destroy(link);
 }
@@ -555,15 +531,15 @@ void test_tcp_hdr_options(void)
 	int i;
 
 	skel = test_tcp_hdr_options__open_and_load();
-	if (CHECK(!skel, "open and load skel", "failed"))
+	if (!ASSERT_OK_PTR(skel, "open and load skel"))
 		return;
 
 	misc_skel = test_misc_tcp_hdr_options__open_and_load();
-	if (CHECK(!misc_skel, "open and load misc test skel", "failed"))
+	if (!ASSERT_OK_PTR(misc_skel, "open and load misc test skel"))
 		goto skel_destroy;
 
 	cg_fd = test__join_cgroup(CG_NAME);
-	if (CHECK_FAIL(cg_fd < 0))
+	if (ASSERT_GE(cg_fd, 0, "join_cgroup"))
 		goto skel_destroy;
 
 	for (i = 0; i < ARRAY_SIZE(tests); i++) {
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [bpf-next 09/11] bpf/selftests: convert tcp_rtt test to ASSERT_* macros
  2022-09-26  5:12 [bpf-next 00/11] bpf/selftests: convert some tests to ASSERT_* macros Wang Yufen
                   ` (7 preceding siblings ...)
  2022-09-26  5:12 ` [bpf-next 08/11] bpf/selftests: convert tcp_hdr_options " Wang Yufen
@ 2022-09-26  5:12 ` Wang Yufen
  2022-09-26  5:12 ` [bpf-next 10/11] bpf/selftests: convert tcpbpf_user " Wang Yufen
                   ` (3 subsequent siblings)
  12 siblings, 0 replies; 16+ messages in thread
From: Wang Yufen @ 2022-09-26  5:12 UTC (permalink / raw)
  To: ast, daniel, andrii, martin.lau, song, yhs, john.fastabend,
	kpsingh, sdf, haoluo, jolsa, mykolal, shuah, delyank, zhudi2,
	jakub, kuba, kuifeng, deso, zhuyifei, hengqi.chen
  Cc: bpf

Convert the selftest to use the preferred ASSERT_* macros instead of the
deprecated CHECK().

Signed-off-by: Wang Yufen <wangyufen@huawei.com>
---
 tools/testing/selftests/bpf/prog_tests/tcp_rtt.c | 13 +++++--------
 1 file changed, 5 insertions(+), 8 deletions(-)

diff --git a/tools/testing/selftests/bpf/prog_tests/tcp_rtt.c b/tools/testing/selftests/bpf/prog_tests/tcp_rtt.c
index 96ff2c2..8fe84da1 100644
--- a/tools/testing/selftests/bpf/prog_tests/tcp_rtt.c
+++ b/tools/testing/selftests/bpf/prog_tests/tcp_rtt.c
@@ -16,8 +16,7 @@ static void send_byte(int fd)
 {
 	char b = 0x55;
 
-	if (CHECK_FAIL(write(fd, &b, sizeof(b)) != 1))
-		perror("Failed to send single byte");
+	ASSERT_EQ(write(fd, &b, sizeof(b)), 1, "send single byte");
 }
 
 static int wait_for_ack(int fd, int retries)
@@ -51,10 +50,8 @@ static int verify_sk(int map_fd, int client_fd, const char *msg, __u32 invoked,
 	int err = 0;
 	struct tcp_rtt_storage val;
 
-	if (CHECK_FAIL(bpf_map_lookup_elem(map_fd, &client_fd, &val) < 0)) {
-		perror("Failed to read socket storage");
+	if (!ASSERT_GE(bpf_map_lookup_elem(map_fd, &client_fd, &val), 0, "read socket storage"))
 		return -1;
-	}
 
 	if (val.invoked != invoked) {
 		log_err("%s: unexpected bpf_tcp_sock.invoked %d != %d",
@@ -151,14 +148,14 @@ void test_tcp_rtt(void)
 	int server_fd, cgroup_fd;
 
 	cgroup_fd = test__join_cgroup("/tcp_rtt");
-	if (CHECK_FAIL(cgroup_fd < 0))
+	if (!ASSERT_GE(cgroup_fd, 0, "join_cgroup /tcp_rtt"))
 		return;
 
 	server_fd = start_server(AF_INET, SOCK_STREAM, NULL, 0, 0);
-	if (CHECK_FAIL(server_fd < 0))
+	if (!ASSERT_GE(server_fd, 0, "start_server"))
 		goto close_cgroup_fd;
 
-	CHECK_FAIL(run_test(cgroup_fd, server_fd));
+	ASSERT_OK(run_test(cgroup_fd, server_fd), "run_test");
 
 	close(server_fd);
 
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [bpf-next 10/11] bpf/selftests: convert tcpbpf_user test to ASSERT_* macros
  2022-09-26  5:12 [bpf-next 00/11] bpf/selftests: convert some tests to ASSERT_* macros Wang Yufen
                   ` (8 preceding siblings ...)
  2022-09-26  5:12 ` [bpf-next 09/11] bpf/selftests: convert tcp_rtt " Wang Yufen
@ 2022-09-26  5:12 ` Wang Yufen
  2022-09-26  5:12 ` [bpf-next 11/11] bpf/selftests: convert udp_limit " Wang Yufen
                   ` (2 subsequent siblings)
  12 siblings, 0 replies; 16+ messages in thread
From: Wang Yufen @ 2022-09-26  5:12 UTC (permalink / raw)
  To: ast, daniel, andrii, martin.lau, song, yhs, john.fastabend,
	kpsingh, sdf, haoluo, jolsa, mykolal, shuah, delyank, zhudi2,
	jakub, kuba, kuifeng, deso, zhuyifei, hengqi.chen
  Cc: bpf

Convert the selftest to use the preferred ASSERT_* macros instead of the
deprecated CHECK().

Signed-off-by: Wang Yufen <wangyufen@huawei.com>
---
 .../testing/selftests/bpf/prog_tests/tcpbpf_user.c | 32 ++++++++--------------
 1 file changed, 12 insertions(+), 20 deletions(-)

diff --git a/tools/testing/selftests/bpf/prog_tests/tcpbpf_user.c b/tools/testing/selftests/bpf/prog_tests/tcpbpf_user.c
index 87923d2..7e8fe1b 100644
--- a/tools/testing/selftests/bpf/prog_tests/tcpbpf_user.c
+++ b/tools/testing/selftests/bpf/prog_tests/tcpbpf_user.c
@@ -8,8 +8,6 @@
 #define LO_ADDR6 "::1"
 #define CG_NAME "/tcpbpf-user-test"
 
-static __u32 duration;
-
 static void verify_result(struct tcpbpf_globals *result)
 {
 	__u32 expected_events = ((1 << BPF_SOCK_OPS_TIMEOUT_INIT) |
@@ -22,9 +20,7 @@ static void verify_result(struct tcpbpf_globals *result)
 				 (1 << BPF_SOCK_OPS_TCP_LISTEN_CB));
 
 	/* check global map */
-	CHECK(expected_events != result->event_map, "event_map",
-	      "unexpected event_map: actual 0x%08x != expected 0x%08x\n",
-	      result->event_map, expected_events);
+	ASSERT_EQ(expected_events, result->event_map, "event_map");
 
 	ASSERT_EQ(result->bytes_received, 501, "bytes_received");
 	ASSERT_EQ(result->bytes_acked, 1002, "bytes_acked");
@@ -56,18 +52,15 @@ static void run_test(struct tcpbpf_globals *result)
 	int i, rv;
 
 	listen_fd = start_server(AF_INET6, SOCK_STREAM, LO_ADDR6, 0, 0);
-	if (CHECK(listen_fd == -1, "start_server", "listen_fd:%d errno:%d\n",
-		  listen_fd, errno))
+	if (!ASSERT_NEQ(listen_fd, -1, "start_server"))
 		goto done;
 
 	cli_fd = connect_to_fd(listen_fd, 0);
-	if (CHECK(cli_fd == -1, "connect_to_fd(listen_fd)",
-		  "cli_fd:%d errno:%d\n", cli_fd, errno))
+	if (!ASSERT_NEQ(cli_fd, -1, "connect_to_fd(listen_fd)"))
 		goto done;
 
 	accept_fd = accept(listen_fd, NULL, NULL);
-	if (CHECK(accept_fd == -1, "accept(listen_fd)",
-		  "accept_fd:%d errno:%d\n", accept_fd, errno))
+	if (!ASSERT_NEQ(accept_fd, -1, "accept(listen_fd)"))
 		goto done;
 
 	/* Send 1000B of '+'s from cli_fd -> accept_fd */
@@ -75,11 +68,11 @@ static void run_test(struct tcpbpf_globals *result)
 		buf[i] = '+';
 
 	rv = send(cli_fd, buf, 1000, 0);
-	if (CHECK(rv != 1000, "send(cli_fd)", "rv:%d errno:%d\n", rv, errno))
+	if (!ASSERT_EQ(rv, 1000, "send(cli_fd)"))
 		goto done;
 
 	rv = recv(accept_fd, buf, 1000, 0);
-	if (CHECK(rv != 1000, "recv(accept_fd)", "rv:%d errno:%d\n", rv, errno))
+	if (!ASSERT_EQ(rv, 1000, "recv(accept_fd)"))
 		goto done;
 
 	/* Send 500B of '.'s from accept_fd ->cli_fd */
@@ -87,11 +80,11 @@ static void run_test(struct tcpbpf_globals *result)
 		buf[i] = '.';
 
 	rv = send(accept_fd, buf, 500, 0);
-	if (CHECK(rv != 500, "send(accept_fd)", "rv:%d errno:%d\n", rv, errno))
+	if (!ASSERT_EQ(rv, 500, "send(accept_fd)"))
 		goto done;
 
 	rv = recv(cli_fd, buf, 500, 0);
-	if (CHECK(rv != 500, "recv(cli_fd)", "rv:%d errno:%d\n", rv, errno))
+	if (!ASSERT_EQ(rv, 500, "recv(cli_fd)"))
 		goto done;
 
 	/*
@@ -100,12 +93,12 @@ static void run_test(struct tcpbpf_globals *result)
 	 */
 	shutdown(accept_fd, SHUT_WR);
 	err = recv(cli_fd, buf, 1, 0);
-	if (CHECK(err, "recv(cli_fd) for fin", "err:%d errno:%d\n", err, errno))
+	if (!ASSERT_OK(err, "recv(cli_fd) for fin"))
 		goto done;
 
 	shutdown(cli_fd, SHUT_WR);
 	err = recv(accept_fd, buf, 1, 0);
-	CHECK(err, "recv(accept_fd) for fin", "err:%d errno:%d\n", err, errno);
+	ASSERT_OK(err, "recv(accept_fd) for fin");
 done:
 	if (accept_fd != -1)
 		close(accept_fd);
@@ -124,12 +117,11 @@ void test_tcpbpf_user(void)
 	int cg_fd = -1;
 
 	skel = test_tcpbpf_kern__open_and_load();
-	if (CHECK(!skel, "open and load skel", "failed"))
+	if (!ASSERT_OK_PTR(skel, "open and load skel"))
 		return;
 
 	cg_fd = test__join_cgroup(CG_NAME);
-	if (CHECK(cg_fd < 0, "test__join_cgroup(" CG_NAME ")",
-		  "cg_fd:%d errno:%d", cg_fd, errno))
+	if (!ASSERT_GE(cg_fd, 0, "test__join_cgroup(" CG_NAME ")"))
 		goto err;
 
 	skel->links.bpf_testcb = bpf_program__attach_cgroup(skel->progs.bpf_testcb, cg_fd);
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* [bpf-next 11/11] bpf/selftests: convert udp_limit test to ASSERT_* macros
  2022-09-26  5:12 [bpf-next 00/11] bpf/selftests: convert some tests to ASSERT_* macros Wang Yufen
                   ` (9 preceding siblings ...)
  2022-09-26  5:12 ` [bpf-next 10/11] bpf/selftests: convert tcpbpf_user " Wang Yufen
@ 2022-09-26  5:12 ` Wang Yufen
  2022-09-29  0:37 ` [bpf-next 00/11] bpf/selftests: convert some tests " Andrii Nakryiko
  2022-09-29  0:40 ` patchwork-bot+netdevbpf
  12 siblings, 0 replies; 16+ messages in thread
From: Wang Yufen @ 2022-09-26  5:12 UTC (permalink / raw)
  To: ast, daniel, andrii, martin.lau, song, yhs, john.fastabend,
	kpsingh, sdf, haoluo, jolsa, mykolal, shuah, delyank, zhudi2,
	jakub, kuba, kuifeng, deso, zhuyifei, hengqi.chen
  Cc: bpf

Convert the selftest to use the preferred ASSERT_* macros instead of the
deprecated CHECK().

Signed-off-by: Wang Yufen <wangyufen@huawei.com>
---
 tools/testing/selftests/bpf/prog_tests/udp_limit.c | 18 +++++++-----------
 1 file changed, 7 insertions(+), 11 deletions(-)

diff --git a/tools/testing/selftests/bpf/prog_tests/udp_limit.c b/tools/testing/selftests/bpf/prog_tests/udp_limit.c
index 56c9d6b..2643d89 100644
--- a/tools/testing/selftests/bpf/prog_tests/udp_limit.c
+++ b/tools/testing/selftests/bpf/prog_tests/udp_limit.c
@@ -5,8 +5,6 @@
 #include <sys/types.h>
 #include <sys/socket.h>
 
-static int duration;
-
 void test_udp_limit(void)
 {
 	struct udp_limit *skel;
@@ -14,11 +12,11 @@ void test_udp_limit(void)
 	int cgroup_fd;
 
 	cgroup_fd = test__join_cgroup("/udp_limit");
-	if (CHECK(cgroup_fd < 0, "cg-join", "errno %d", errno))
+	if (!ASSERT_GE(cgroup_fd, 0, "cg-join"))
 		return;
 
 	skel = udp_limit__open_and_load();
-	if (CHECK(!skel, "skel-load", "errno %d", errno))
+	if (!ASSERT_OK_PTR(skel, "skel-load"))
 		goto close_cgroup_fd;
 
 	skel->links.sock = bpf_program__attach_cgroup(skel->progs.sock, cgroup_fd);
@@ -32,11 +30,11 @@ void test_udp_limit(void)
 	 * verify that.
 	 */
 	fd1 = socket(AF_INET, SOCK_DGRAM, 0);
-	if (CHECK(fd1 < 0, "fd1", "errno %d", errno))
+	if (!ASSERT_GE(fd1, 0, "socket(fd1)"))
 		goto close_skeleton;
 
 	fd2 = socket(AF_INET, SOCK_DGRAM, 0);
-	if (CHECK(fd2 >= 0, "fd2", "errno %d", errno))
+	if (!ASSERT_LT(fd2, 0, "socket(fd2)"))
 		goto close_skeleton;
 
 	/* We can reopen again after close. */
@@ -44,7 +42,7 @@ void test_udp_limit(void)
 	fd1 = -1;
 
 	fd1 = socket(AF_INET, SOCK_DGRAM, 0);
-	if (CHECK(fd1 < 0, "fd1-again", "errno %d", errno))
+	if (!ASSERT_GE(fd1, 0, "socket(fd1-again)"))
 		goto close_skeleton;
 
 	/* Make sure the program was invoked the expected
@@ -54,13 +52,11 @@ void test_udp_limit(void)
 	 * - close fd1          - BPF_CGROUP_INET_SOCK_RELEASE
 	 * - open fd1 again     - BPF_CGROUP_INET_SOCK_CREATE
 	 */
-	if (CHECK(skel->bss->invocations != 4, "bss-invocations",
-		  "invocations=%d", skel->bss->invocations))
+	if (!ASSERT_EQ(skel->bss->invocations, 4, "bss-invocations"))
 		goto close_skeleton;
 
 	/* We should still have a single socket in use */
-	if (CHECK(skel->bss->in_use != 1, "bss-in_use",
-		  "in_use=%d", skel->bss->in_use))
+	if (!ASSERT_EQ(skel->bss->in_use, 1, "bss-in_use"))
 		goto close_skeleton;
 
 close_skeleton:
-- 
1.8.3.1


^ permalink raw reply related	[flat|nested] 16+ messages in thread

* Re: [bpf-next 00/11] bpf/selftests: convert some tests to ASSERT_* macros
  2022-09-26  5:12 [bpf-next 00/11] bpf/selftests: convert some tests to ASSERT_* macros Wang Yufen
                   ` (10 preceding siblings ...)
  2022-09-26  5:12 ` [bpf-next 11/11] bpf/selftests: convert udp_limit " Wang Yufen
@ 2022-09-29  0:37 ` Andrii Nakryiko
  2022-09-29  3:37   ` wangyufen
  2022-09-29  0:40 ` patchwork-bot+netdevbpf
  12 siblings, 1 reply; 16+ messages in thread
From: Andrii Nakryiko @ 2022-09-29  0:37 UTC (permalink / raw)
  To: Wang Yufen
  Cc: ast, daniel, andrii, martin.lau, song, yhs, john.fastabend,
	kpsingh, sdf, haoluo, jolsa, mykolal, shuah, delyank, zhudi2,
	jakub, kuba, kuifeng, deso, zhuyifei, hengqi.chen, bpf

On Sun, Sep 25, 2022 at 9:51 PM Wang Yufen <wangyufen@huawei.com> wrote:
>
> Convert some tests to use the preferred ASSERT_* macros instead of the
> deprecated CHECK().
>
> Wang Yufen (11):
>   bpf/selftests: convert sockmap_basic test to ASSERT_* macros
>   bpf/selftests: convert sockmap_ktls test to ASSERT_* macros
>   bpf/selftests: convert sockopt test to ASSERT_* macros
>   bpf/selftests: convert sockopt_inherit test to ASSERT_* macros
>   bpf/selftests: convert sockopt_multi test to ASSERT_* macros
>   bpf/selftests: convert sockopt_sk test to ASSERT_* macros
>   bpf/selftests: convert tcp_estats test to ASSERT_* macros
>   bpf/selftests: convert tcp_hdr_options test to ASSERT_* macros
>   bpf/selftests: convert tcp_rtt test to ASSERT_* macros
>   bpf/selftests: convert tcpbpf_user test to ASSERT_* macros
>   bpf/selftests: convert udp_limit test to ASSERT_* macros
>
>  .../selftests/bpf/prog_tests/sockmap_basic.c       | 87 ++++++++--------------
>  .../selftests/bpf/prog_tests/sockmap_ktls.c        | 39 +++-------
>  tools/testing/selftests/bpf/prog_tests/sockopt.c   |  4 +-
>  .../selftests/bpf/prog_tests/sockopt_inherit.c     | 30 ++++----
>  .../selftests/bpf/prog_tests/sockopt_multi.c       | 10 +--
>  .../testing/selftests/bpf/prog_tests/sockopt_sk.c  |  2 +-
>  .../testing/selftests/bpf/prog_tests/tcp_estats.c  |  4 +-
>  .../selftests/bpf/prog_tests/tcp_hdr_options.c     | 80 +++++++-------------
>  tools/testing/selftests/bpf/prog_tests/tcp_rtt.c   | 13 ++--
>  .../testing/selftests/bpf/prog_tests/tcpbpf_user.c | 32 +++-----
>  tools/testing/selftests/bpf/prog_tests/udp_limit.c | 18 ++---
>  11 files changed, 117 insertions(+), 202 deletions(-)
>
> --
> 1.8.3.1
>

Thanks for the clean up! I've changed one ASSERT_OK(err && errno !=
ENOENT) to ASSERT_EQ(errno, ENOENT) in patch #1, that expresses the
intent more directly. Please also keep in mind that patch prefix
should (conventionally) be "selftests/bpf: ". I've fixed that for all
patches while applying.

We are down to:

$ rg -w CHECK | wc -l
1186
09/28 17:36:39.381
andriin@devbig019:~/linux/tools/testing/selftests/bpf (master)
$ rg -w CHECK_FAIL | wc -l
463

Some ways to go still, but slowly decreasing. Thank you for your contribution!

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [bpf-next 00/11] bpf/selftests: convert some tests to ASSERT_* macros
  2022-09-26  5:12 [bpf-next 00/11] bpf/selftests: convert some tests to ASSERT_* macros Wang Yufen
                   ` (11 preceding siblings ...)
  2022-09-29  0:37 ` [bpf-next 00/11] bpf/selftests: convert some tests " Andrii Nakryiko
@ 2022-09-29  0:40 ` patchwork-bot+netdevbpf
  12 siblings, 0 replies; 16+ messages in thread
From: patchwork-bot+netdevbpf @ 2022-09-29  0:40 UTC (permalink / raw)
  To: Wang Yufen
  Cc: ast, daniel, andrii, martin.lau, song, yhs, john.fastabend,
	kpsingh, sdf, haoluo, jolsa, mykolal, shuah, delyank, zhudi2,
	jakub, kuba, kuifeng, deso, zhuyifei, hengqi.chen, bpf

Hello:

This series was applied to bpf/bpf-next.git (master)
by Andrii Nakryiko <andrii@kernel.org>:

On Mon, 26 Sep 2022 13:12:00 +0800 you wrote:
> Convert some tests to use the preferred ASSERT_* macros instead of the
> deprecated CHECK().
> 
> Wang Yufen (11):
>   bpf/selftests: convert sockmap_basic test to ASSERT_* macros
>   bpf/selftests: convert sockmap_ktls test to ASSERT_* macros
>   bpf/selftests: convert sockopt test to ASSERT_* macros
>   bpf/selftests: convert sockopt_inherit test to ASSERT_* macros
>   bpf/selftests: convert sockopt_multi test to ASSERT_* macros
>   bpf/selftests: convert sockopt_sk test to ASSERT_* macros
>   bpf/selftests: convert tcp_estats test to ASSERT_* macros
>   bpf/selftests: convert tcp_hdr_options test to ASSERT_* macros
>   bpf/selftests: convert tcp_rtt test to ASSERT_* macros
>   bpf/selftests: convert tcpbpf_user test to ASSERT_* macros
>   bpf/selftests: convert udp_limit test to ASSERT_* macros
> 
> [...]

Here is the summary with links:
  - [bpf-next,01/11] bpf/selftests: convert sockmap_basic test to ASSERT_* macros
    https://git.kernel.org/bpf/bpf-next/c/38e35e1d0cee
  - [bpf-next,02/11] bpf/selftests: convert sockmap_ktls test to ASSERT_* macros
    https://git.kernel.org/bpf/bpf-next/c/d155fcb3fff1
  - [bpf-next,03/11] bpf/selftests: convert sockopt test to ASSERT_* macros
    https://git.kernel.org/bpf/bpf-next/c/099763e7da0b
  - [bpf-next,04/11] bpf/selftests: convert sockopt_inherit test to ASSERT_* macros
    https://git.kernel.org/bpf/bpf-next/c/675bc8abe16d
  - [bpf-next,05/11] bpf/selftests: convert sockopt_multi test to ASSERT_* macros
    https://git.kernel.org/bpf/bpf-next/c/a605a6bbccce
  - [bpf-next,06/11] bpf/selftests: convert sockopt_sk test to ASSERT_* macros
    https://git.kernel.org/bpf/bpf-next/c/f19708dfa0bf
  - [bpf-next,07/11] bpf/selftests: convert tcp_estats test to ASSERT_* macros
    https://git.kernel.org/bpf/bpf-next/c/a0a17296713a
  - [bpf-next,08/11] bpf/selftests: convert tcp_hdr_options test to ASSERT_* macros
    https://git.kernel.org/bpf/bpf-next/c/3082f8cd4ba3
  - [bpf-next,09/11] bpf/selftests: convert tcp_rtt test to ASSERT_* macros
    https://git.kernel.org/bpf/bpf-next/c/8dda32ac58b6
  - [bpf-next,10/11] bpf/selftests: convert tcpbpf_user test to ASSERT_* macros
    https://git.kernel.org/bpf/bpf-next/c/9d0b05bdfbea
  - [bpf-next,11/11] bpf/selftests: convert udp_limit test to ASSERT_* macros
    https://git.kernel.org/bpf/bpf-next/c/1fddca3d36d1

You are awesome, thank you!
-- 
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/patchwork/pwbot.html



^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [bpf-next 00/11] bpf/selftests: convert some tests to ASSERT_* macros
  2022-09-29  0:37 ` [bpf-next 00/11] bpf/selftests: convert some tests " Andrii Nakryiko
@ 2022-09-29  3:37   ` wangyufen
  0 siblings, 0 replies; 16+ messages in thread
From: wangyufen @ 2022-09-29  3:37 UTC (permalink / raw)
  To: Andrii Nakryiko
  Cc: ast, daniel, andrii, martin.lau, song, yhs, john.fastabend,
	kpsingh, sdf, haoluo, jolsa, mykolal, shuah, delyank, zhudi2,
	jakub, kuba, kuifeng, deso, zhuyifei, hengqi.chen, bpf


在 2022/9/29 8:37, Andrii Nakryiko 写道:
> On Sun, Sep 25, 2022 at 9:51 PM Wang Yufen <wangyufen@huawei.com> wrote:
>> Convert some tests to use the preferred ASSERT_* macros instead of the
>> deprecated CHECK().
>>
>> Wang Yufen (11):
>>    bpf/selftests: convert sockmap_basic test to ASSERT_* macros
>>    bpf/selftests: convert sockmap_ktls test to ASSERT_* macros
>>    bpf/selftests: convert sockopt test to ASSERT_* macros
>>    bpf/selftests: convert sockopt_inherit test to ASSERT_* macros
>>    bpf/selftests: convert sockopt_multi test to ASSERT_* macros
>>    bpf/selftests: convert sockopt_sk test to ASSERT_* macros
>>    bpf/selftests: convert tcp_estats test to ASSERT_* macros
>>    bpf/selftests: convert tcp_hdr_options test to ASSERT_* macros
>>    bpf/selftests: convert tcp_rtt test to ASSERT_* macros
>>    bpf/selftests: convert tcpbpf_user test to ASSERT_* macros
>>    bpf/selftests: convert udp_limit test to ASSERT_* macros
>>
>>   .../selftests/bpf/prog_tests/sockmap_basic.c       | 87 ++++++++--------------
>>   .../selftests/bpf/prog_tests/sockmap_ktls.c        | 39 +++-------
>>   tools/testing/selftests/bpf/prog_tests/sockopt.c   |  4 +-
>>   .../selftests/bpf/prog_tests/sockopt_inherit.c     | 30 ++++----
>>   .../selftests/bpf/prog_tests/sockopt_multi.c       | 10 +--
>>   .../testing/selftests/bpf/prog_tests/sockopt_sk.c  |  2 +-
>>   .../testing/selftests/bpf/prog_tests/tcp_estats.c  |  4 +-
>>   .../selftests/bpf/prog_tests/tcp_hdr_options.c     | 80 +++++++-------------
>>   tools/testing/selftests/bpf/prog_tests/tcp_rtt.c   | 13 ++--
>>   .../testing/selftests/bpf/prog_tests/tcpbpf_user.c | 32 +++-----
>>   tools/testing/selftests/bpf/prog_tests/udp_limit.c | 18 ++---
>>   11 files changed, 117 insertions(+), 202 deletions(-)
>>
>> --
>> 1.8.3.1
>>
> Thanks for the clean up! I've changed one ASSERT_OK(err && errno !=
> ENOENT) to ASSERT_EQ(errno, ENOENT) in patch #1, that expresses the
> intent more directly. Please also keep in mind that patch prefix
> should (conventionally) be "selftests/bpf: ". I've fixed that for all
> patches while applying.

I got it.Thanks for the fixes.

>
> We are down to:
>
> $ rg -w CHECK | wc -l
> 1186
> 09/28 17:36:39.381
> andriin@devbig019:~/linux/tools/testing/selftests/bpf (master)
> $ rg -w CHECK_FAIL | wc -l
> 463
>
> Some ways to go still, but slowly decreasing. Thank you for your contribution!

^ permalink raw reply	[flat|nested] 16+ messages in thread

* Re: [bpf-next 08/11] bpf/selftests: convert tcp_hdr_options test to ASSERT_* macros
  2022-09-26  5:12 ` [bpf-next 08/11] bpf/selftests: convert tcp_hdr_options " Wang Yufen
@ 2022-11-04  1:29   ` Martin KaFai Lau
  0 siblings, 0 replies; 16+ messages in thread
From: Martin KaFai Lau @ 2022-11-04  1:29 UTC (permalink / raw)
  To: Wang Yufen
  Cc: bpf, ast, daniel, andrii, song, yhs, john.fastabend, kpsingh,
	sdf, haoluo, jolsa, mykolal, shuah, delyank, zhudi2, jakub, kuba,
	kuifeng, deso, zhuyifei, hengqi.chen

On 9/25/22 10:12 PM, Wang Yufen wrote:
> @@ -497,26 +481,20 @@ static void misc(void)
>   		/* MSG_EOR to ensure skb will not be combined */
>   		ret = send(sk_fds.active_fd, send_msg, sizeof(send_msg),
>   			   MSG_EOR);
> -		if (CHECK(ret != sizeof(send_msg), "send(msg)", "ret:%d\n",
> -			  ret))
> +		if (!ASSERT_EQ(ret, sizeof(send_msg), "send(msg)"))
>   			goto check_linum;
>   
>   		ret = read(sk_fds.passive_fd, recv_msg, sizeof(recv_msg));
> -		if (CHECK(ret != sizeof(send_msg), "read(msg)", "ret:%d\n",
> -			  ret))
> +		if (ASSERT_EQ(ret, sizeof(send_msg), "read(msg)"))

Thanks for the clean up.  However, this looks wrong...

>   			goto check_linum;
>   	}
>   
>   	if (sk_fds_shutdown(&sk_fds))
>   		goto check_linum;
>   
> -	CHECK(misc_skel->bss->nr_syn != 1, "unexpected nr_syn",
> -	      "expected (1) != actual (%u)\n",
> -		misc_skel->bss->nr_syn);
> +	ASSERT_EQ(misc_skel->bss->nr_syn, 1, "unexpected nr_syn");
>   
> -	CHECK(misc_skel->bss->nr_data != nr_data, "unexpected nr_data",
> -	      "expected (%u) != actual (%u)\n",
> -	      nr_data, misc_skel->bss->nr_data);
> +	ASSERT_EQ(misc_skel->bss->nr_data, nr_data, "unexpected nr_data");
>   
>   	/* The last ACK may have been delayed, so it is either 1 or 2. */
>   	CHECK(misc_skel->bss->nr_pure_ack != 1 &&
> @@ -525,12 +503,10 @@ static void misc(void)
>   	      "expected (1 or 2) != actual (%u)\n",
>   		misc_skel->bss->nr_pure_ack);
>   
> -	CHECK(misc_skel->bss->nr_fin != 1, "unexpected nr_fin",
> -	      "expected (1) != actual (%u)\n",
> -	      misc_skel->bss->nr_fin);
> +	ASSERT_EQ(misc_skel->bss->nr_fin, 1, "unexpected nr_fin");
>   
>   check_linum:
> -	CHECK_FAIL(check_error_linum(&sk_fds));
> +	ASSERT_FALSE(check_error_linum(&sk_fds), "check_error_linum");
>   	sk_fds_close(&sk_fds);
>   	bpf_link__destroy(link);
>   }
> @@ -555,15 +531,15 @@ void test_tcp_hdr_options(void)
>   	int i;
>   
>   	skel = test_tcp_hdr_options__open_and_load();
> -	if (CHECK(!skel, "open and load skel", "failed"))
> +	if (!ASSERT_OK_PTR(skel, "open and load skel"))
>   		return;
>   
>   	misc_skel = test_misc_tcp_hdr_options__open_and_load();
> -	if (CHECK(!misc_skel, "open and load misc test skel", "failed"))
> +	if (!ASSERT_OK_PTR(misc_skel, "open and load misc test skel"))
>   		goto skel_destroy;
>   
>   	cg_fd = test__join_cgroup(CG_NAME);
> -	if (CHECK_FAIL(cg_fd < 0))
> +	if (ASSERT_GE(cg_fd, 0, "join_cgroup"))

...and at least this one also.  Have your tested it?

Here is some quick checks that will be useful.

Before this patch:
#> ./test_progs -t tcp_hdr_options
#197/1   tcp_hdr_options/simple_estab:OK
#197/2   tcp_hdr_options/no_exprm_estab:OK
#197/3   tcp_hdr_options/syncookie_estab:OK
#197/4   tcp_hdr_options/fastopen_estab:OK
#197/5   tcp_hdr_options/fin:OK
#197/6   tcp_hdr_options/misc:OK
#197     tcp_hdr_options:OK
Summary: 1/6 PASSED, 0 SKIPPED, 0 FAILED

#> ./test_progs -v -t tcp_hdr_options |& egrep PASS | wc -l
123

After this patch:
#> ./test_progs -t tcp_hdr_options
#197     tcp_hdr_options:OK
Summary: 1/0 PASSED, 0 SKIPPED, 0 FAILED

#> ./test_progs -v -t tcp_hdr_options |& egrep PASS | wc -l
4

Please check all the changes in this set.

^ permalink raw reply	[flat|nested] 16+ messages in thread

end of thread, other threads:[~2022-11-04  1:30 UTC | newest]

Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-09-26  5:12 [bpf-next 00/11] bpf/selftests: convert some tests to ASSERT_* macros Wang Yufen
2022-09-26  5:12 ` [bpf-next 01/11] bpf/selftests: convert sockmap_basic test " Wang Yufen
2022-09-26  5:12 ` [bpf-next 02/11] bpf/selftests: convert sockmap_ktls " Wang Yufen
2022-09-26  5:12 ` [bpf-next 03/11] bpf/selftests: convert sockopt " Wang Yufen
2022-09-26  5:12 ` [bpf-next 04/11] bpf/selftests: convert sockopt_inherit " Wang Yufen
2022-09-26  5:12 ` [bpf-next 05/11] bpf/selftests: convert sockopt_multi " Wang Yufen
2022-09-26  5:12 ` [bpf-next 06/11] bpf/selftests: convert sockopt_sk " Wang Yufen
2022-09-26  5:12 ` [bpf-next 07/11] bpf/selftests: convert tcp_estats " Wang Yufen
2022-09-26  5:12 ` [bpf-next 08/11] bpf/selftests: convert tcp_hdr_options " Wang Yufen
2022-11-04  1:29   ` Martin KaFai Lau
2022-09-26  5:12 ` [bpf-next 09/11] bpf/selftests: convert tcp_rtt " Wang Yufen
2022-09-26  5:12 ` [bpf-next 10/11] bpf/selftests: convert tcpbpf_user " Wang Yufen
2022-09-26  5:12 ` [bpf-next 11/11] bpf/selftests: convert udp_limit " Wang Yufen
2022-09-29  0:37 ` [bpf-next 00/11] bpf/selftests: convert some tests " Andrii Nakryiko
2022-09-29  3:37   ` wangyufen
2022-09-29  0:40 ` patchwork-bot+netdevbpf

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.