From: Martin KaFai Lau <martin.lau@linux.dev>
To: Jason Xing <kerneljasonxing@gmail.com>, willemdebruijn.kernel@gmail.com
Cc: davem@davemloft.net, edumazet@google.com, kuba@kernel.org,
pabeni@redhat.com, dsahern@kernel.org, willemb@google.com,
ast@kernel.org, daniel@iogearbox.net, andrii@kernel.org,
eddyz87@gmail.com, song@kernel.org, yonghong.song@linux.dev,
john.fastabend@gmail.com, kpsingh@kernel.org, sdf@fomichev.me,
haoluo@google.com, jolsa@kernel.org, horms@kernel.org,
bpf@vger.kernel.org, netdev@vger.kernel.org
Subject: Re: [PATCH bpf-next v11 00/12] net-timestamp: bpf extension to equip applications transparently
Date: Fri, 14 Feb 2025 12:42:59 -0800 [thread overview]
Message-ID: <035d99ac-0f39-444d-bf2a-68d46f0e22a2@linux.dev> (raw)
In-Reply-To: <20250214010038.54131-1-kerneljasonxing@gmail.com>
On 2/13/25 5:00 PM, Jason Xing wrote:
> "Timestamping is key to debugging network stack latency. With
> SO_TIMESTAMPING, bugs that are otherwise incorrectly assumed to be
> network issues can be attributed to the kernel." This is extracted
> from the talk "SO_TIMESTAMPING: Powering Fleetwide RPC Monitoring"
> addressed by Willem de Bruijn at netdevconf 0x17).
>
> There are a few areas that need optimization with the consideration of
> easier use and less performance impact, which I highlighted and mainly
> discussed at netconf 2024 with Willem de Bruijn and John Fastabend:
> uAPI compatibility, extra system call overhead, and the need for
> application modification. I initially managed to solve these issues
> by writing a kernel module that hooks various key functions. However,
> this approach is not suitable for the next kernel release. Therefore,
> a BPF extension was proposed. During recent period, Martin KaFai Lau
> provides invaluable suggestions about BPF along the way. Many thanks
> here!
>
> This series adds the BPF networking timestamping infrastructure through
> reusing most of the tx timestamping callback that is currently enabled
> by the SO_TIMESTAMPING.. This series also adds TX timestamping support
> for TCP. The RX timestamping and UDP support will be added in the future.
>
> ---
> v10
> Link: https://lore.kernel.org/all/20250212061855.71154-1-kerneljasonxing@gmail.com/
> 1. rename hwts with hwtimestamp
> 2. use subtest and pid filter in selftest
> 3. use 'tcb->txstamp_ack |= TSTAMP_ACK_SK'
Overall looks good. I only have two minor comments.
Willem, can you also take another look and ack if it looks good to you? Thanks.
prev parent reply other threads:[~2025-02-14 20:43 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-14 1:00 [PATCH bpf-next v11 00/12] net-timestamp: bpf extension to equip applications transparently Jason Xing
2025-02-14 1:00 ` [PATCH bpf-next v11 01/12] bpf: add networking timestamping support to bpf_get/setsockopt() Jason Xing
2025-02-14 1:00 ` [PATCH bpf-next v11 02/12] bpf: prepare the sock_ops ctx and call bpf prog for TX timestamping Jason Xing
2025-02-14 1:00 ` [PATCH bpf-next v11 03/12] bpf: prevent unsafe access to the sock fields in the BPF timestamping callback Jason Xing
2025-02-14 1:00 ` [PATCH bpf-next v11 04/12] bpf: disable unsafe helpers in TX timestamping callbacks Jason Xing
2025-02-14 1:00 ` [PATCH bpf-next v11 05/12] net-timestamp: prepare for isolating two modes of SO_TIMESTAMPING Jason Xing
2025-02-14 1:00 ` [PATCH bpf-next v11 06/12] bpf: add BPF_SOCK_OPS_TS_SCHED_OPT_CB callback Jason Xing
2025-02-14 1:00 ` [PATCH bpf-next v11 07/12] bpf: add BPF_SOCK_OPS_TS_SW_OPT_CB callback Jason Xing
2025-02-14 1:00 ` [PATCH bpf-next v11 08/12] bpf: add BPF_SOCK_OPS_TS_HW_OPT_CB callback Jason Xing
2025-02-15 15:06 ` Willem de Bruijn
2025-02-15 16:20 ` Jason Xing
2025-02-15 18:08 ` Willem de Bruijn
2025-02-15 22:23 ` Jason Xing
2025-02-15 22:58 ` Martin KaFai Lau
2025-02-15 23:10 ` Jason Xing
2025-02-16 14:36 ` Willem de Bruijn
2025-02-16 14:45 ` Jason Xing
2025-02-16 14:48 ` Jason Xing
2025-02-16 16:17 ` Jason Xing
2025-02-18 0:56 ` Willem de Bruijn
2025-02-18 4:51 ` Jason Xing
2025-02-18 0:55 ` Willem de Bruijn
2025-02-14 1:00 ` [PATCH bpf-next v11 09/12] bpf: add BPF_SOCK_OPS_TS_ACK_OPT_CB callback Jason Xing
2025-02-14 20:33 ` Martin KaFai Lau
2025-02-14 23:16 ` Jason Xing
2025-02-14 23:41 ` Martin KaFai Lau
2025-02-15 15:16 ` Willem de Bruijn
2025-02-14 1:00 ` [PATCH bpf-next v11 10/12] bpf: add BPF_SOCK_OPS_TS_SND_CB callback Jason Xing
2025-02-14 1:00 ` [PATCH bpf-next v11 11/12] bpf: support selective sampling for bpf timestamping Jason Xing
2025-02-15 15:10 ` Willem de Bruijn
2025-02-15 16:17 ` Jason Xing
2025-02-15 18:01 ` Willem de Bruijn
2025-02-15 21:11 ` Jason Xing
2025-02-14 1:00 ` [PATCH bpf-next v11 12/12] selftests/bpf: add simple bpf tests in the tx path for timestamping feature Jason Xing
2025-02-14 20:40 ` Martin KaFai Lau
2025-02-14 23:18 ` Jason Xing
2025-02-15 15:15 ` Willem de Bruijn
2025-02-15 16:17 ` Jason Xing
2025-02-15 18:01 ` Willem de Bruijn
2025-02-14 20:42 ` Martin KaFai Lau [this message]
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=035d99ac-0f39-444d-bf2a-68d46f0e22a2@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=davem@davemloft.net \
--cc=dsahern@kernel.org \
--cc=eddyz87@gmail.com \
--cc=edumazet@google.com \
--cc=haoluo@google.com \
--cc=horms@kernel.org \
--cc=john.fastabend@gmail.com \
--cc=jolsa@kernel.org \
--cc=kerneljasonxing@gmail.com \
--cc=kpsingh@kernel.org \
--cc=kuba@kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
--cc=sdf@fomichev.me \
--cc=song@kernel.org \
--cc=willemb@google.com \
--cc=willemdebruijn.kernel@gmail.com \
--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;
as well as URLs for NNTP newsgroup(s).