From: Martin KaFai Lau <martin.lau@linux.dev>
To: Geliang Tang <geliang@kernel.org>
Cc: Andrii Nakryiko <andrii@kernel.org>,
Eduard Zingerman <eddyz87@gmail.com>,
Mykola Lysenko <mykolal@fb.com>,
Alexei Starovoitov <ast@kernel.org>,
Daniel Borkmann <daniel@iogearbox.net>,
Song Liu <song@kernel.org>,
Yonghong Song <yonghong.song@linux.dev>,
John Fastabend <john.fastabend@gmail.com>,
KP Singh <kpsingh@kernel.org>,
Stanislav Fomichev <sdf@google.com>, Hao Luo <haoluo@google.com>,
Jiri Olsa <jolsa@kernel.org>, Shuah Khan <shuah@kernel.org>,
Jakub Sitnicki <jakub@cloudflare.com>,
Geliang Tang <tanggeliang@kylinos.cn>,
bpf@vger.kernel.org, linux-kselftest@vger.kernel.org
Subject: Re: [PATCH bpf-next 2/6] selftests/bpf: Use start_server_addr in sockopt_inherit
Date: Thu, 9 May 2024 13:51:54 -0700 [thread overview]
Message-ID: <fbdc9729-0c48-4894-858f-d294502c4032@linux.dev> (raw)
In-Reply-To: <687af66f743a0bf15cdba372c5f71fe64863219e.1714907662.git.tanggeliang@kylinos.cn>
On 5/5/24 4:35 AM, Geliang Tang wrote:
> From: Geliang Tang <tanggeliang@kylinos.cn>
>
> Include network_helpers.h in prog_tests/sockopt_inherit.c, use public
> helper start_server_addr() instead of the local defined function
> start_server(). This can avoid duplicate code.
>
> Add a helper custom_cb() to set SOL_CUSTOM sockopt looply, set it to
> post_socket_cb pointer of struct network_helper_opts, and pass it to
> start_server_addr().
>
> Signed-off-by: Geliang Tang <tanggeliang@kylinos.cn>
> ---
> .../bpf/prog_tests/sockopt_inherit.c | 32 +++++++------------
> 1 file changed, 12 insertions(+), 20 deletions(-)
>
> diff --git a/tools/testing/selftests/bpf/prog_tests/sockopt_inherit.c b/tools/testing/selftests/bpf/prog_tests/sockopt_inherit.c
> index 917f486db826..ff0694ef5286 100644
> --- a/tools/testing/selftests/bpf/prog_tests/sockopt_inherit.c
> +++ b/tools/testing/selftests/bpf/prog_tests/sockopt_inherit.c
> @@ -1,6 +1,7 @@
> // SPDX-License-Identifier: GPL-2.0
> #include <test_progs.h>
> #include "cgroup_helpers.h"
> +#include "network_helpers.h"
>
> #include "sockopt_inherit.skel.h"
>
> @@ -98,23 +99,12 @@ static void *server_thread(void *arg)
> return (void *)(long)err;
> }
>
> -static int start_server(void)
> +static int custom_cb(int fd, const struct post_socket_opts *opts)
> {
> - struct sockaddr_in addr = {
> - .sin_family = AF_INET,
> - .sin_addr.s_addr = htonl(INADDR_LOOPBACK),
> - };
> char buf;
> int err;
> - int fd;
> int i;
>
> - fd = socket(AF_INET, SOCK_STREAM, 0);
> - if (fd < 0) {
> - log_err("Failed to create server socket");
> - return -1;
> - }
> -
> for (i = CUSTOM_INHERIT1; i <= CUSTOM_LISTENER; i++) {
> buf = 0x01;
> err = setsockopt(fd, SOL_CUSTOM, i, &buf, 1);
There is a close(fd) on the error case a few lines below (not in this diff
context). The caller (network_helpers.c) will also close it. I removed the
close(fd) from the custom_cb() here.
Thanks for the patches. Applied.
> @@ -125,20 +115,21 @@ static int start_server(void)
> }
> }
>
> - if (bind(fd, (const struct sockaddr *)&addr, sizeof(addr)) < 0) {
> - log_err("Failed to bind socket");
> - close(fd);
> - return -1;
> - }
> -
> - return fd;
> + return 0;
> }
>
next prev parent reply other threads:[~2024-05-09 20:52 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-05-05 11:35 [PATCH bpf-next 0/6] use network helpers, part 4 Geliang Tang
2024-05-05 11:35 ` [PATCH bpf-next 1/6] selftests/bpf: Add post_socket_cb for network_helper_opts Geliang Tang
2024-05-09 20:28 ` Martin KaFai Lau
2024-05-05 11:35 ` [PATCH bpf-next 2/6] selftests/bpf: Use start_server_addr in sockopt_inherit Geliang Tang
2024-05-09 20:51 ` Martin KaFai Lau [this message]
2024-05-05 11:35 ` [PATCH bpf-next 3/6] selftests/bpf: Use start_server_addr in test_tcp_check_syncookie Geliang Tang
2024-05-05 11:35 ` [PATCH bpf-next 4/6] selftests/bpf: Use connect_to_fd in sockopt_inherit Geliang Tang
2024-05-05 11:35 ` [PATCH bpf-next 5/6] selftests/bpf: Use connect_to_fd in test_tcp_check_syncookie Geliang Tang
2024-05-05 11:35 ` [PATCH bpf-next 6/6] selftests/bpf: Drop get_port " Geliang Tang
2024-05-09 20:50 ` [PATCH bpf-next 0/6] use network helpers, part 4 patchwork-bot+netdevbpf
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=fbdc9729-0c48-4894-858f-d294502c4032@linux.dev \
--to=martin.lau@linux.dev \
--cc=andrii@kernel.org \
--cc=ast@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=daniel@iogearbox.net \
--cc=eddyz87@gmail.com \
--cc=geliang@kernel.org \
--cc=haoluo@google.com \
--cc=jakub@cloudflare.com \
--cc=john.fastabend@gmail.com \
--cc=jolsa@kernel.org \
--cc=kpsingh@kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=mykolal@fb.com \
--cc=sdf@google.com \
--cc=shuah@kernel.org \
--cc=song@kernel.org \
--cc=tanggeliang@kylinos.cn \
--cc=yonghong.song@linux.dev \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.