* pull-request: bpf-next 2023-07-19
@ 2023-07-19 17:54 Alexei Starovoitov
2023-07-19 23:50 ` patchwork-bot+netdevbpf
0 siblings, 1 reply; 5+ messages in thread
From: Alexei Starovoitov @ 2023-07-19 17:54 UTC (permalink / raw)
To: davem; +Cc: kuba, edumazet, pabeni, daniel, andrii, netdev, bpf, kernel-team
Hi David, hi Jakub, hi Paolo, hi Eric,
The following pull-request contains BPF updates for your *net-next* tree.
We've added 45 non-merge commits during the last 3 day(s) which contain
a total of 71 files changed, 7808 insertions(+), 592 deletions(-).
The main changes are:
1) multi-buffer support in AF_XDP, from Maciej Fijalkowski, Magnus Karlsson, Tirthendu Sarkar.
2) BPF link support for tc BPF programs, from Daniel Borkmann.
3) Enable bpf_map_sum_elem_count kfunc for all program types, from Anton Protopopov.
4) Add 'owner' field to bpf_rb_node to fix races in shared ownership, Dave Marchevsky.
5) Prevent potential skb_header_pointer() misuse, from Alexei Starovoitov.
There should be no merge conflicts.
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:
Andrii Nakryiko, Dan Carpenter, Jakub Kicinski, Quentin Monnet
----------------------------------------------------------------
The following changes since commit 60cc1f7d0605598b47ee3c0c2b4b6fbd4da50a06:
Merge branch 'phy-at803x-support' (2023-07-17 10:15:14 +0100)
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 6f5a630d7c57cd79b1f526a95e757311e32d41e5:
bpf, net: Introduce skb_pointer_if_linear(). (2023-07-19 10:27:33 -0700)
----------------------------------------------------------------
for-netdev
----------------------------------------------------------------
Alan Maguire (1):
bpf: sync tools/ uapi header with
Alexei Starovoitov (5):
Merge branch 'bpf-refcount-followups-2-owner-field'
Merge branch 'allow-bpf_map_sum_elem_count-for-all-program-types'
Merge branch 'xsk-multi-buffer-support'
Merge branch 'bpf-link-support-for-tc-bpf-programs'
bpf, net: Introduce skb_pointer_if_linear().
Anh Tuan Phan (1):
samples/bpf: README: Update build dependencies required
Anton Protopopov (4):
bpf: consider types listed in reg2btf_ids as trusted
bpf: consider CONST_PTR_TO_MAP as trusted pointer to struct bpf_map
bpf: make an argument const in the bpf_map_sum_elem_count kfunc
bpf: allow any program to use the bpf_map_sum_elem_count kfunc
Daniel Borkmann (8):
bpf: Add generic attach/detach/query API for multi-progs
bpf: Add fd-based tcx multi-prog infra with link support
libbpf: Add opts-based attach/detach/query API for tcx
libbpf: Add link-based API for tcx
libbpf: Add helper macro to clear opts structs
bpftool: Extend net dump with tcx progs
selftests/bpf: Add mprog API tests for BPF tcx opts
selftests/bpf: Add mprog API tests for BPF tcx links
Dave Marchevsky (4):
bpf: Introduce internal definitions for UAPI-opaque bpf_{rb,list}_node
bpf: Add 'owner' field to bpf_{list,rb}_node
selftests/bpf: Add rbtree test exercising race which 'owner' field prevents
selftests/bpf: Disable newly-added 'owner' field test until refcount re-enabled
Geliang Tang (1):
bpf: Drop useless btf_vmlinux in bpf_tcp_ca
Maciej Fijalkowski (8):
xsk: prepare both copy and zero-copy modes to co-exist
xsk: allow core/drivers to test EOP bit
xsk: add new netlink attribute dedicated for ZC max frags
xsk: support mbuf on ZC RX
ice: xsk: add RX multi-buffer support
xsk: support ZC Tx multi-buffer in batch API
ice: xsk: Tx multi-buffer support
selftests/xsk: reset NIC settings to default after running test suite
Magnus Karlsson (7):
xsk: add multi-buffer documentation
selftests/xsk: transmit and receive multi-buffer packets
selftests/xsk: add basic multi-buffer test
selftests/xsk: add unaligned mode test for multi-buffer
selftests/xsk: add invalid descriptor test for multi-buffer
selftests/xsk: add metadata copy test for multi-buff
selftests/xsk: add test for too many frags
Menglong Dong (1):
bpf, x86: initialize the variable "first_off" in save_args()
Tirthendu Sarkar (9):
xsk: prepare 'options' in xdp_desc for multi-buffer use
xsk: introduce XSK_USE_SG bind flag for xsk socket
xsk: move xdp_buff's data length check to xsk_rcv_check
xsk: add support for AF_XDP multi-buffer on Rx path
xsk: introduce wrappers and helpers for supporting multi-buffer in Tx path
xsk: add support for AF_XDP multi-buffer on Tx path
xsk: discard zero length descriptors in Tx path
i40e: xsk: add RX multi-buffer support
i40e: xsk: add TX multi-buffer support
Documentation/netlink/specs/netdev.yaml | 6 +
Documentation/networking/af_xdp.rst | 211 +-
MAINTAINERS | 5 +-
arch/x86/net/bpf_jit_comp.c | 2 +-
drivers/net/ethernet/intel/i40e/i40e_main.c | 6 +-
drivers/net/ethernet/intel/i40e/i40e_txrx.c | 4 +-
drivers/net/ethernet/intel/i40e/i40e_txrx.h | 2 +
drivers/net/ethernet/intel/i40e/i40e_xsk.c | 101 +-
drivers/net/ethernet/intel/ice/ice_base.c | 9 +-
drivers/net/ethernet/intel/ice/ice_main.c | 1 +
drivers/net/ethernet/intel/ice/ice_xsk.c | 221 +-
include/linux/bpf.h | 12 +
include/linux/bpf_mprog.h | 327 +++
include/linux/btf_ids.h | 1 +
include/linux/netdevice.h | 16 +-
include/linux/skbuff.h | 14 +-
include/net/sch_generic.h | 2 +-
include/net/tcx.h | 206 ++
include/net/xdp_sock.h | 7 +
include/net/xdp_sock_drv.h | 54 +
include/net/xsk_buff_pool.h | 7 +
include/uapi/linux/bpf.h | 72 +-
include/uapi/linux/if_xdp.h | 13 +
include/uapi/linux/netdev.h | 1 +
kernel/bpf/Kconfig | 1 +
kernel/bpf/Makefile | 3 +-
kernel/bpf/helpers.c | 55 +-
kernel/bpf/map_iter.c | 7 +-
kernel/bpf/mprog.c | 445 ++++
kernel/bpf/syscall.c | 82 +-
kernel/bpf/tcx.c | 348 +++
kernel/bpf/verifier.c | 22 +-
net/Kconfig | 5 +
net/core/dev.c | 266 ++-
net/core/filter.c | 11 +-
net/core/netdev-genl.c | 8 +
net/ipv4/bpf_tcp_ca.c | 2 -
net/sched/Kconfig | 4 +-
net/sched/sch_ingress.c | 61 +-
net/xdp/xsk.c | 365 +++-
net/xdp/xsk_buff_pool.c | 7 +
net/xdp/xsk_queue.h | 95 +-
samples/bpf/README.rst | 14 +-
tools/bpf/bpftool/Documentation/bpftool-net.rst | 26 +-
tools/bpf/bpftool/net.c | 98 +-
tools/bpf/bpftool/netlink_dumper.h | 8 +
tools/include/uapi/linux/bpf.h | 72 +-
tools/include/uapi/linux/if_xdp.h | 9 +
tools/include/uapi/linux/netdev.h | 1 +
tools/lib/bpf/bpf.c | 127 +-
tools/lib/bpf/bpf.h | 97 +-
tools/lib/bpf/libbpf.c | 70 +-
tools/lib/bpf/libbpf.h | 18 +-
tools/lib/bpf/libbpf.map | 2 +
tools/lib/bpf/libbpf_common.h | 16 +
tools/lib/bpf/netlink.c | 5 +
.../testing/selftests/bpf/prog_tests/linked_list.c | 78 +-
.../selftests/bpf/prog_tests/refcounted_kptr.c | 4 +
.../testing/selftests/bpf/prog_tests/tc_helpers.h | 72 +
tools/testing/selftests/bpf/prog_tests/tc_links.c | 1583 ++++++++++++++
tools/testing/selftests/bpf/prog_tests/tc_opts.c | 2239 ++++++++++++++++++++
tools/testing/selftests/bpf/progs/map_ptr_kern.c | 5 +
.../testing/selftests/bpf/progs/refcounted_kptr.c | 94 +-
tools/testing/selftests/bpf/progs/test_tc_link.c | 40 +
tools/testing/selftests/bpf/progs/xsk_xdp_progs.c | 6 +-
tools/testing/selftests/bpf/test_xsk.sh | 5 +
tools/testing/selftests/bpf/xsk.c | 136 +-
tools/testing/selftests/bpf/xsk.h | 2 +
tools/testing/selftests/bpf/xsk_prereqs.sh | 7 +
tools/testing/selftests/bpf/xskxceiver.c | 458 +++-
tools/testing/selftests/bpf/xskxceiver.h | 21 +-
71 files changed, 7808 insertions(+), 592 deletions(-)
create mode 100644 include/linux/bpf_mprog.h
create mode 100644 include/net/tcx.h
create mode 100644 kernel/bpf/mprog.c
create mode 100644 kernel/bpf/tcx.c
create mode 100644 tools/testing/selftests/bpf/prog_tests/tc_helpers.h
create mode 100644 tools/testing/selftests/bpf/prog_tests/tc_links.c
create mode 100644 tools/testing/selftests/bpf/prog_tests/tc_opts.c
create mode 100644 tools/testing/selftests/bpf/progs/test_tc_link.c
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: pull-request: bpf-next 2023-07-19
2023-07-19 17:54 pull-request: bpf-next 2023-07-19 Alexei Starovoitov
@ 2023-07-19 23:50 ` patchwork-bot+netdevbpf
2023-07-20 11:25 ` Eric Dumazet
0 siblings, 1 reply; 5+ messages in thread
From: patchwork-bot+netdevbpf @ 2023-07-19 23:50 UTC (permalink / raw)
To: Alexei Starovoitov
Cc: davem, kuba, edumazet, pabeni, daniel, andrii, netdev, bpf,
kernel-team
Hello:
This pull request was applied to netdev/net-next.git (main)
by Jakub Kicinski <kuba@kernel.org>:
On Wed, 19 Jul 2023 10:54:24 -0700 you wrote:
> Hi David, hi Jakub, hi Paolo, hi Eric,
>
> The following pull-request contains BPF updates for your *net-next* tree.
>
> We've added 45 non-merge commits during the last 3 day(s) which contain
> a total of 71 files changed, 7808 insertions(+), 592 deletions(-).
>
> [...]
Here is the summary with links:
- pull-request: bpf-next 2023-07-19
https://git.kernel.org/netdev/net-next/c/e93165d5e75d
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] 5+ messages in thread* Re: pull-request: bpf-next 2023-07-19
2023-07-19 23:50 ` patchwork-bot+netdevbpf
@ 2023-07-20 11:25 ` Eric Dumazet
2023-07-20 14:53 ` Eric Dumazet
0 siblings, 1 reply; 5+ messages in thread
From: Eric Dumazet @ 2023-07-20 11:25 UTC (permalink / raw)
To: patchwork-bot+netdevbpf
Cc: Alexei Starovoitov, davem, kuba, pabeni, daniel, andrii, netdev,
bpf, kernel-team
On Thu, Jul 20, 2023 at 1:50 AM <patchwork-bot+netdevbpf@kernel.org> wrote:
>
> Hello:
>
> This pull request was applied to netdev/net-next.git (main)
> by Jakub Kicinski <kuba@kernel.org>:
>
> On Wed, 19 Jul 2023 10:54:24 -0700 you wrote:
> > Hi David, hi Jakub, hi Paolo, hi Eric,
> >
> > The following pull-request contains BPF updates for your *net-next* tree.
> >
> > We've added 45 non-merge commits during the last 3 day(s) which contain
> > a total of 71 files changed, 7808 insertions(+), 592 deletions(-).
> >
> > [...]
>
> Here is the summary with links:
> - pull-request: bpf-next 2023-07-19
> https://git.kernel.org/netdev/net-next/c/e93165d5e75d
>
> You are awesome, thank you!
> --
> Deet-doot-dot, I am a bot.
> https://korg.docs.kernel.org/patchwork/pwbot.html
>
>
"bpf: Add fd-based tcx multi-prog infra with link support" seems to
cause a bunch of syzbot reports.
I am waiting a bit for more entropy before releasing them to the public.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: pull-request: bpf-next 2023-07-19
2023-07-20 11:25 ` Eric Dumazet
@ 2023-07-20 14:53 ` Eric Dumazet
2023-07-20 15:02 ` Alexei Starovoitov
0 siblings, 1 reply; 5+ messages in thread
From: Eric Dumazet @ 2023-07-20 14:53 UTC (permalink / raw)
To: patchwork-bot+netdevbpf
Cc: Alexei Starovoitov, davem, kuba, pabeni, daniel, andrii, netdev,
bpf, kernel-team
On Thu, Jul 20, 2023 at 1:25 PM Eric Dumazet <edumazet@google.com> wrote:
>
> On Thu, Jul 20, 2023 at 1:50 AM <patchwork-bot+netdevbpf@kernel.org> wrote:
> >
> > Hello:
> >
> > This pull request was applied to netdev/net-next.git (main)
> > by Jakub Kicinski <kuba@kernel.org>:
> >
> > On Wed, 19 Jul 2023 10:54:24 -0700 you wrote:
> > > Hi David, hi Jakub, hi Paolo, hi Eric,
> > >
> > > The following pull-request contains BPF updates for your *net-next* tree.
> > >
> > > We've added 45 non-merge commits during the last 3 day(s) which contain
> > > a total of 71 files changed, 7808 insertions(+), 592 deletions(-).
> > >
> > > [...]
> >
> > Here is the summary with links:
> > - pull-request: bpf-next 2023-07-19
> > https://git.kernel.org/netdev/net-next/c/e93165d5e75d
> >
> > You are awesome, thank you!
> > --
> > Deet-doot-dot, I am a bot.
> > https://korg.docs.kernel.org/patchwork/pwbot.html
> >
> >
>
> "bpf: Add fd-based tcx multi-prog infra with link support" seems to
> cause a bunch of syzbot reports.
>
> I am waiting a bit for more entropy before releasing them to the public.
OK, syzbot found one repro for one of the reports, time to release it
for investigations.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: pull-request: bpf-next 2023-07-19
2023-07-20 14:53 ` Eric Dumazet
@ 2023-07-20 15:02 ` Alexei Starovoitov
0 siblings, 0 replies; 5+ messages in thread
From: Alexei Starovoitov @ 2023-07-20 15:02 UTC (permalink / raw)
To: Eric Dumazet
Cc: patchwork-bot+netdevbpf, David S. Miller, Jakub Kicinski,
Paolo Abeni, Daniel Borkmann, Andrii Nakryiko,
Network Development, bpf, Kernel Team
On Thu, Jul 20, 2023 at 7:53 AM Eric Dumazet <edumazet@google.com> wrote:
>
> On Thu, Jul 20, 2023 at 1:25 PM Eric Dumazet <edumazet@google.com> wrote:
> >
> > On Thu, Jul 20, 2023 at 1:50 AM <patchwork-bot+netdevbpf@kernel.org> wrote:
> > >
> > > Hello:
> > >
> > > This pull request was applied to netdev/net-next.git (main)
> > > by Jakub Kicinski <kuba@kernel.org>:
> > >
> > > On Wed, 19 Jul 2023 10:54:24 -0700 you wrote:
> > > > Hi David, hi Jakub, hi Paolo, hi Eric,
> > > >
> > > > The following pull-request contains BPF updates for your *net-next* tree.
> > > >
> > > > We've added 45 non-merge commits during the last 3 day(s) which contain
> > > > a total of 71 files changed, 7808 insertions(+), 592 deletions(-).
> > > >
> > > > [...]
> > >
> > > Here is the summary with links:
> > > - pull-request: bpf-next 2023-07-19
> > > https://git.kernel.org/netdev/net-next/c/e93165d5e75d
> > >
> > > You are awesome, thank you!
> > > --
> > > Deet-doot-dot, I am a bot.
> > > https://korg.docs.kernel.org/patchwork/pwbot.html
> > >
> > >
> >
> > "bpf: Add fd-based tcx multi-prog infra with link support" seems to
> > cause a bunch of syzbot reports.
> >
> > I am waiting a bit for more entropy before releasing them to the public.
>
> OK, syzbot found one repro for one of the reports, time to release it
> for investigations.
Thanks for the headsup.
That's an impressive speed for syzbot to track upstream so closely.
Does it do it for net-next only? Can it be taught to do the same for
bpf-next too?
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2023-07-20 15:03 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-07-19 17:54 pull-request: bpf-next 2023-07-19 Alexei Starovoitov
2023-07-19 23:50 ` patchwork-bot+netdevbpf
2023-07-20 11:25 ` Eric Dumazet
2023-07-20 14:53 ` Eric Dumazet
2023-07-20 15:02 ` Alexei Starovoitov
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).