Hi David, hi Jakub, hi Paolo, hi Eric, The following pull-request contains BPF updates for your *net-next* tree. We've added 12 non-merge commits during the last 16 day(s) which contain a total of 20 files changed, 228 insertions(+), 30 deletions(-). There's a minor merge conflict in netkit driver, resolve as follows (https://lore.kernel.org/bpf/2444df33-cd03-a929-9ce8-3cf1376d3f78@xxxxxxxxxxxxx): dev->priv_flags |= IFF_LIVE_ADDR_CHANGE; dev->priv_flags |= IFF_PHONY_HEADROOM; dev->priv_flags |= IFF_NO_QUEUE; + dev->priv_flags |= IFF_DISABLE_NETPOLL; + dev->lltx = true; dev->ethtool_ops = &netkit_ethtool_ops; dev->netdev_ops = &netkit_netdev_ops; The main changes are: 1) Enable bpf_dynptr_from_skb for tp_btf such that this can be used to easily parse skbs in BPF programs attached to tracepoints, from Philo Lu. 2) Add a cond_resched() point in BPF's sock_hash_free() as there have been several syzbot soft lockup reports recently, from Eric Dumazet. 3) Fix xsk_buff_can_alloc() to account for queue_empty_descs which got noticed when zero copy ice driver started to use it, from Maciej Fijalkowski. 4) Move the xdp:xdp_cpumap_kthread tracepoint before cpumap pushes skbs up via netif_receive_skb_list() to better measure latencies, from Daniel Xu. 5) Follow-up to disable netpoll support from netkit, from Daniel Borkmann. 6) Improve xsk selftests to not assume a fixed MAX_SKB_FRAGS of 17 but instead gather the actual value via /proc/sys/net/core/max_skb_frags, also from Maciej Fijalkowski. 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: Breno Leitao, Cong Wang, Jakub Kicinski, Jakub Sitnicki, Jesper Dangaard Brouer, John Fastabend, Magnus Karlsson, Martin KaFai Lau, Nikolay Aleksandrov, Stanislav Fomichev, syzbot ---------------------------------------------------------------- The following changes since commit f8fdda9e4f988c210b1e4519a28ddbf7d29b0038: Merge branch 'tc-adjust-network-header-after-2nd-vlan-push' (2024-08-27 11:37:46 +0200) 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 b1339be951ad31947ae19bc25cb08769bf255100: sock_map: Add a cond_resched() in sock_hash_free() (2024-09-11 22:16:04 +0200) ---------------------------------------------------------------- bpf-next-for-netdev ---------------------------------------------------------------- Daniel Borkmann (1): netkit: Disable netpoll support Daniel Xu (1): bpf, cpumap: Move xdp:xdp_cpumap_kthread tracepoint before rcv Eric Dumazet (1): sock_map: Add a cond_resched() in sock_hash_free() Maciej Fijalkowski (2): xsk: Bump xsk_queue::queue_empty_descs in xp_can_alloc() selftests/xsk: Read current MAX_SKB_FRAGS from sysctl knob Martin KaFai Lau (1): Merge branch 'bpf: Allow skb dynptr for tp_btf' Philo Lu (5): bpf: Support __nullable argument suffix for tp_btf selftests/bpf: Add test for __nullable suffix in tp_btf tcp: Use skb__nullable in trace_tcp_send_reset bpf: Allow bpf_dynptr_from_skb() for tp_btf selftests/bpf: Expand skb dynptr selftests for tp_btf Simon Horman (1): bpf, sockmap: Correct spelling skmsg.c Yaxin Chen (1): tcp_bpf: Remove an unused parameter for bpf_tcp_ingress() drivers/net/netkit.c | 1 + include/trace/events/tcp.h | 12 +++--- kernel/bpf/btf.c | 3 ++ kernel/bpf/cpumap.c | 6 ++- kernel/bpf/verifier.c | 36 ++++++++++++++++-- net/core/filter.c | 3 +- net/core/skmsg.c | 2 +- net/core/sock_map.c | 1 + net/ipv4/tcp_bpf.c | 4 +- net/xdp/xsk_buff_pool.c | 10 ++++- net/xdp/xsk_queue.h | 5 --- .../selftests/bpf/bpf_testmod/bpf_testmod-events.h | 6 +++ .../selftests/bpf/bpf_testmod/bpf_testmod.c | 2 + tools/testing/selftests/bpf/prog_tests/dynptr.c | 37 ++++++++++++++++++- .../selftests/bpf/prog_tests/tp_btf_nullable.c | 14 +++++++ tools/testing/selftests/bpf/progs/dynptr_fail.c | 25 +++++++++++++ tools/testing/selftests/bpf/progs/dynptr_success.c | 23 ++++++++++++ .../selftests/bpf/progs/test_tp_btf_nullable.c | 24 ++++++++++++ tools/testing/selftests/bpf/xskxceiver.c | 43 +++++++++++++++++++--- tools/testing/selftests/bpf/xskxceiver.h | 1 - 20 files changed, 228 insertions(+), 30 deletions(-) create mode 100644 tools/testing/selftests/bpf/prog_tests/tp_btf_nullable.c create mode 100644 tools/testing/selftests/bpf/progs/test_tp_btf_nullable.c