From: Martin KaFai Lau <martin.lau@linux.dev>
To: David Miller <davem@davemloft.net>,
Jakub Kicinski <kuba@kernel.org>,
Eric Dumazet <edumazet@google.com>,
Paolo Abeni <pabeni@redhat.com>
Cc: Alexei Starovoitov <ast@kernel.org>,
Andrii Nakryiko <andrii@kernel.org>,
Daniel Borkmann <daniel@iogearbox.net>,
Martin KaFai Lau <martin.lau@kernel.org>,
netdev@vger.kernel.org, bpf@vger.kernel.org
Subject: pull-request: bpf-next 2025-02-20
Date: Thu, 20 Feb 2025 18:21:04 -0800 [thread overview]
Message-ID: <20250221022104.386462-1-martin.lau@linux.dev> (raw)
Hi David, hi Jakub, hi Paolo, hi Eric,
The following pull-request contains BPF updates for your *net-next* tree.
We've added 19 non-merge commits during the last 8 day(s) which contain
a total of 35 files changed, 1126 insertions(+), 53 deletions(-).
The main changes are:
1) Add TCP_RTO_MAX_MS support to bpf_set/getsockopt, from Jason Xing
2) Add network TX timestamping support to BPF sock_ops, from Jason Xing
3) Add TX metadata Launch Time support, from Song Yoong Siang
Please consider pulling these changes from:
git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git tags/for-netdev
Thanks a lot!
Also thanks to reporters, reviewers and testers of commits in this pull-request:
Choong Yong Liang, Faizal Rahim, Jakub Kicinski, Kuniyuki Iwashima,
Maciej Fijalkowski, Stanislav Fomichev, Willem de Bruijn
----------------------------------------------------------------
The following changes since commit 7a7e0197133d18cfd9931e7d3a842d0f5730223f:
Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net (2025-02-13 12:43:30 -0800)
are available in the Git repository at:
https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git tags/for-netdev
for you to fetch changes up to 494a04413cb194f869b4b3133b07dfbc607165aa:
Merge branch 'xsk-tx-metadata-launch-time-support' (2025-02-20 15:13:46 -0800)
----------------------------------------------------------------
bpf-next-for-netdev
----------------------------------------------------------------
Jason Xing (14):
bpf: Support TCP_RTO_MAX_MS for bpf_setsockopt
selftests/bpf: Add rto max for bpf_setsockopt test
bpf: Add networking timestamping support to bpf_get/setsockopt()
bpf: Prepare the sock_ops ctx and call bpf prog for TX timestamping
bpf: Prevent unsafe access to the sock fields in the BPF timestamping callback
bpf: Disable unsafe helpers in TX timestamping callbacks
net-timestamp: Prepare for isolating two modes of SO_TIMESTAMPING
bpf: Add BPF_SOCK_OPS_TSTAMP_SCHED_CB callback
bpf: Add BPF_SOCK_OPS_TSTAMP_SND_SW_CB callback
bpf: Add BPF_SOCK_OPS_TSTAMP_SND_HW_CB callback
bpf: Add BPF_SOCK_OPS_TSTAMP_ACK_CB callback
bpf: Add BPF_SOCK_OPS_TSTAMP_SENDMSG_CB callback
bpf: Support selective sampling for bpf timestamping
selftests/bpf: Add simple bpf tests in the tx path for timestamping feature
Martin KaFai Lau (3):
Merge branch 'bpf-support-setting-max-rto-for-bpf_setsockopt'
Merge branch 'net-timestamp-bpf-extension-to-equip-applications-transparently'
Merge branch 'xsk-tx-metadata-launch-time-support'
Song Yoong Siang (5):
xsk: Add launch time hardware offload support to XDP Tx metadata
selftests/bpf: Add launch time request to xdp_hw_metadata
net: stmmac: Add launch time support to XDP ZC
igc: Refactor empty frame insertion for launch time support
igc: Add launch time support to XDP ZC
Documentation/netlink/specs/netdev.yaml | 4 +
Documentation/networking/xsk-tx-metadata.rst | 62 ++++++
drivers/net/ethernet/intel/igc/igc.h | 1 +
drivers/net/ethernet/intel/igc/igc_main.c | 143 +++++++++---
drivers/net/ethernet/stmicro/stmmac/stmmac.h | 2 +
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 13 ++
include/linux/filter.h | 1 +
include/linux/skbuff.h | 12 +-
include/net/sock.h | 10 +
include/net/tcp.h | 7 +-
include/net/xdp_sock.h | 10 +
include/net/xdp_sock_drv.h | 1 +
include/uapi/linux/bpf.h | 30 +++
include/uapi/linux/if_xdp.h | 10 +
include/uapi/linux/netdev.h | 3 +
kernel/bpf/btf.c | 1 +
net/core/dev.c | 3 +-
net/core/filter.c | 80 ++++++-
net/core/netdev-genl.c | 2 +
net/core/skbuff.c | 53 +++++
net/core/sock.c | 14 ++
net/dsa/user.c | 2 +-
net/ipv4/tcp.c | 6 +-
net/ipv4/tcp_input.c | 2 +
net/ipv4/tcp_output.c | 2 +
net/socket.c | 2 +-
net/xdp/xsk.c | 3 +
tools/include/uapi/linux/bpf.h | 30 +++
tools/include/uapi/linux/if_xdp.h | 10 +
tools/include/uapi/linux/netdev.h | 3 +
.../selftests/bpf/prog_tests/net_timestamping.c | 239 ++++++++++++++++++++
.../testing/selftests/bpf/progs/bpf_tracing_net.h | 1 +
.../testing/selftests/bpf/progs/net_timestamping.c | 248 +++++++++++++++++++++
tools/testing/selftests/bpf/progs/setget_sockopt.c | 1 +
tools/testing/selftests/bpf/xdp_hw_metadata.c | 168 +++++++++++++-
35 files changed, 1126 insertions(+), 53 deletions(-)
create mode 100644 tools/testing/selftests/bpf/prog_tests/net_timestamping.c
create mode 100644 tools/testing/selftests/bpf/progs/net_timestamping.c
next reply other threads:[~2025-02-21 2:21 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-21 2:21 Martin KaFai Lau [this message]
2025-02-22 0:30 ` pull-request: bpf-next 2025-02-20 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=20250221022104.386462-1-martin.lau@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=edumazet@google.com \
--cc=kuba@kernel.org \
--cc=martin.lau@kernel.org \
--cc=netdev@vger.kernel.org \
--cc=pabeni@redhat.com \
/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