Hi David, hi Jakub, hi Paolo, hi Eric, The following pull-request contains BPF updates for your *net-next* tree. We've added 17 non-merge commits during the last 6 day(s) which contain a total of 20 files changed, 1179 insertions(+), 37 deletions(-). The main changes are: 1) Add a BPF hook in sys_socket() to change the protocol ID from IPPROTO_TCP to IPPROTO_MPTCP to cover migration for legacy applications, from Geliang Tang. 2) Follow-up/fallout fix from the SO_REUSEPORT + bpf_sk_assign work to fix a splat on non-fullsock sks in inet[6]_steal_sock, from Lorenz Bauer. 3) Improvements to struct_ops links to avoid forcing presence of update/validate callbacks. Also add bpf_struct_ops fields documentation, from David Vernet. 4) Ensure libbpf sets close-on-exec flag on gzopen, from Marco Vedovati. 5) Several new tcx selftest additions and bpftool link show support for tcx and xdp links, from Daniel Borkmann. 6) Fix a smatch warning on uninitialized symbol in bpf_perf_link_fill_kprobe, from Yafang Shao. 7) BPF selftest fixes e.g. misplaced break in kfunc_call test, from Yipeng Zou. 8) Small cleanup to remove unused declaration bpf_link_new_file, from Yue Haibing. 9) Small typo fix to bpftool's perf help message, from Daniel T. Lee. 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: Dan Carpenter, Jiri Olsa, Kui-Feng Lee, Kumar Kartikeya Dwivedi, Li Zetao, Matthieu Baerts, Quentin Monnet, Yafang Shao, Yonghong Song ---------------------------------------------------------------- The following changes since commit 6231e47b6fadf42da2e7a45b8272e80aed53c444: tun: avoid high-order page allocation for packet header (2023-08-10 19:33:35 -0700) 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 de40537364c34fd665a0f00d156d24c6c0e89a66: Merge branch 'bpf: Force to MPTCP' (2023-08-16 11:42:35 -0700) ---------------------------------------------------------------- bpf-next-for-netdev ---------------------------------------------------------------- Daniel Borkmann (3): selftests/bpf: Add various more tcx test cases bpftool: Implement link show support for tcx bpftool: Implement link show support for xdp Daniel T. Lee (1): bpftool: fix perf help message David Vernet (2): bpf: Support default .validate() and .update() behavior for struct_ops links bpf: Document struct bpf_struct_ops fields Geliang Tang (4): bpf: Add update_socket_protocol hook selftests/bpf: Add two mptcp netns helpers selftests/bpf: Fix error checks of mptcp open_and_load selftests/bpf: Add mptcpify test Lorenz Bauer (1): net: Fix slab-out-of-bounds in inet[6]_steal_sock Marco Vedovati (1): libbpf: Set close-on-exec flag on gzopen Martin KaFai Lau (2): Merge branch 'Update and document struct_ops' Merge branch 'bpf: Force to MPTCP' Yafang Shao (2): bpf: Fix uninitialized symbol in bpf_perf_link_fill_kprobe() selftests/bpf: Add selftest for fill_link_info Yipeng Zou (2): selftests/bpf: Fix repeat option when kfunc_call verification fails selftests/bpf: Clean up fmod_ret in bench_rename test script Yue Haibing (1): bpf: Remove unused declaration bpf_link_new_file() include/linux/bpf.h | 48 ++- include/net/inet6_hashtables.h | 2 +- include/net/inet_hashtables.h | 2 +- kernel/bpf/bpf_struct_ops.c | 15 +- kernel/bpf/syscall.c | 5 +- net/mptcp/bpf.c | 15 + net/socket.c | 26 +- tools/bpf/bpftool/link.c | 44 +++ tools/bpf/bpftool/perf.c | 2 +- tools/lib/bpf/libbpf.c | 4 +- tools/testing/selftests/bpf/DENYLIST.aarch64 | 3 + .../selftests/bpf/benchs/run_bench_rename.sh | 2 +- .../selftests/bpf/prog_tests/fill_link_info.c | 342 +++++++++++++++++++++ .../testing/selftests/bpf/prog_tests/kfunc_call.c | 2 +- tools/testing/selftests/bpf/prog_tests/mptcp.c | 180 +++++++++-- tools/testing/selftests/bpf/prog_tests/tc_links.c | 336 ++++++++++++++++++++ tools/testing/selftests/bpf/prog_tests/tc_opts.c | 110 +++++++ tools/testing/selftests/bpf/progs/mptcpify.c | 20 ++ .../selftests/bpf/progs/test_fill_link_info.c | 42 +++ tools/testing/selftests/bpf/progs/test_tc_link.c | 16 + 20 files changed, 1179 insertions(+), 37 deletions(-) create mode 100644 tools/testing/selftests/bpf/prog_tests/fill_link_info.c create mode 100644 tools/testing/selftests/bpf/progs/mptcpify.c create mode 100644 tools/testing/selftests/bpf/progs/test_fill_link_info.c