From: Martin KaFai Lau <martin.lau@linux.dev>
To: Jordan Rife <jrife@google.com>
Cc: linux-kselftest@vger.kernel.org, netdev@vger.kernel.org,
Alexei Starovoitov <ast@kernel.org>,
Daniel Borkmann <daniel@iogearbox.net>,
Andrii Nakryiko <andrii@kernel.org>,
Eduard Zingerman <eddyz87@gmail.com>, 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>, Mykola Lysenko <mykolal@fb.com>,
Shuah Khan <shuah@kernel.org>,
"David S. Miller" <davem@davemloft.net>,
Jakub Kicinski <kuba@kernel.org>,
Jesper Dangaard Brouer <hawk@kernel.org>,
Daan De Meyer <daan.j.demeyer@gmail.com>,
bpf@vger.kernel.org
Subject: Re: [PATCH v1 bpf-next 4/8] selftests/bpf: Add recv_msg_from_client to network helpers
Date: Tue, 2 Apr 2024 15:33:18 -0700 [thread overview]
Message-ID: <e5a1261d-0366-4459-b78c-86557d6e1834@linux.dev> (raw)
In-Reply-To: <20240329191907.1808635-5-jrife@google.com>
On 3/29/24 12:18 PM, Jordan Rife wrote:
> +int recvmsg_from_client(int sockfd, struct sockaddr_storage *src_addr)
> +{
> + struct timeval tv;
> + struct msghdr hdr;
> + struct iovec iov;
> + char data[64];
> + fd_set rfds;
> +
> + FD_ZERO(&rfds);
> + FD_SET(sockfd, &rfds);
> +
> + tv.tv_sec = 2;
> + tv.tv_usec = 0;
> +
> + if (select(sockfd + 1, &rfds, NULL, NULL, &tv) <= 0 ||
The socket fd created by the helpers in network_helpers.c should be a blocking
socket and has a 3s default delay. select should not be needed. Try to stay with
the default. If the default turned out to be too flaky in the bpf CI in the
future, one default change is easier.
> + !FD_ISSET(sockfd, &rfds))
> + return -1;
> +
> + memset(&iov, 0, sizeof(iov));
> + iov.iov_base = data;
> + iov.iov_len = sizeof(data);
> +
> + memset(&hdr, 0, sizeof(hdr));
> + hdr.msg_name = src_addr;
> + hdr.msg_namelen = sizeof(struct sockaddr_storage);
> + hdr.msg_iov = &iov;
> + hdr.msg_iovlen = 1;
> +
> + return recvmsg(sockfd, &hdr, 0);
> +}
next prev parent reply other threads:[~2024-04-02 22:33 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-03-29 19:18 [PATCH v1 bpf-next 0/8] selftests/bpf: Add sockaddr tests for kernel networking Jordan Rife
2024-03-29 19:18 ` [PATCH v1 bpf-next 1/8] selftests/bpf: Introduce sock_addr_testmod Jordan Rife
2024-03-29 22:09 ` Andrii Nakryiko
2024-03-29 22:09 ` Andrii Nakryiko
2024-04-02 17:57 ` Martin KaFai Lau
2024-04-02 18:14 ` Jordan Rife
2024-03-29 19:18 ` [PATCH v1 bpf-next 2/8] selftests/bpf: Add module load helpers Jordan Rife
2024-03-29 19:18 ` [PATCH v1 bpf-next 3/8] selftests/bpf: Factor out cmp_addr Jordan Rife
2024-03-29 19:18 ` [PATCH v1 bpf-next 4/8] selftests/bpf: Add recv_msg_from_client to network helpers Jordan Rife
2024-04-02 22:33 ` Martin KaFai Lau [this message]
2024-03-29 19:18 ` [PATCH v1 bpf-next 5/8] selftests/bpf: Factor out load_path and defines from test_sock_addr Jordan Rife
2024-04-02 23:14 ` Martin KaFai Lau
2024-04-03 0:05 ` Jordan Rife
2024-03-29 19:18 ` [PATCH v1 bpf-next 6/8] selftests/bpf: Add setup/cleanup subcommands Jordan Rife
2024-03-29 19:18 ` [PATCH v1 bpf-next 7/8] selftests/bpf: Add sock_addr_kern prog_test Jordan Rife
2024-03-29 19:18 ` [PATCH v1 bpf-next 8/8] selftests/bpf: Fix bind program for big endian systems Jordan Rife
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=e5a1261d-0366-4459-b78c-86557d6e1834@linux.dev \
--to=martin.lau@linux.dev \
--cc=andrii@kernel.org \
--cc=ast@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=daan.j.demeyer@gmail.com \
--cc=daniel@iogearbox.net \
--cc=davem@davemloft.net \
--cc=eddyz87@gmail.com \
--cc=haoluo@google.com \
--cc=hawk@kernel.org \
--cc=john.fastabend@gmail.com \
--cc=jolsa@kernel.org \
--cc=jrife@google.com \
--cc=kpsingh@kernel.org \
--cc=kuba@kernel.org \
--cc=linux-kselftest@vger.kernel.org \
--cc=mykolal@fb.com \
--cc=netdev@vger.kernel.org \
--cc=sdf@google.com \
--cc=shuah@kernel.org \
--cc=song@kernel.org \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox