Hi David, hi Jakub, hi Paolo, hi Eric, The following pull-request contains BPF updates for your *net* tree. We've added 17 non-merge commits during the last 12 day(s) which contain a total of 19 files changed, 184 insertions(+), 61 deletions(-). The main changes are: 1) Fix an arm64 BPF JIT bug in BPF_LDX_MEMSX implementation's offset handling found via test_bpf module, from Puranjay Mohan. 2) Various fixups to the BPF arena code in particular in the BPF verifier and around BPF selftests to match latest corresponding LLVM implementation, from Puranjay Mohan and Alexei Starovoitov. 3) Fix xsk to not assume that metadata is always requested in TX completion, from Stanislav Fomichev. 4) Fix riscv BPF JIT's kfunc parameter incompatibility between BPF and the riscv ABI which requires sign-extension on int/uint, from Pu Lehui. 5) Fix s390x BPF JIT's bpf_plt pointer arithmetic which triggered a crash when testing struct_ops, from Ilya Leoshkevich. 6) Fix libbpf's arena mmap handling which had incorrect u64-to-pointer cast on 32-bit architectures, from Andrii Nakryiko. 7) Fix libbpf to define MFD_CLOEXEC when not available, from Arnaldo Carvalho de Melo. 8) Fix arm64 BPF JIT implementation for 32bit unconditional bswap which resulted in an incorrect swap as indicated by test_bpf, from Artem Savkov. 9) Fix BPF man page build script to use silent mode, from Hangbin Liu. Please consider pulling these changes from: git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf.git tags/for-netdev Thanks a lot! Also thanks to reporters, reviewers and testers of commits in this pull-request: Alejandro Colomar, Daniele Salvatore Albano, Kumar Kartikeya Dwivedi, Puranjay Mohan, Quentin Monnet, Ryan Eatmon, Stanislav Fomichev, xingwei lee, Xu Kuohai, yue sun ---------------------------------------------------------------- The following changes since commit e30cef001da259e8df354b813015d0e5acc08740: net: txgbe: fix clk_name exceed MAX_DEV_ID limits (2024-03-14 13:49:02 +0100) are available in the Git repository at: https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf.git tags/for-netdev for you to fetch changes up to 443574b033876c85a35de4c65c14f7fe092222b2: riscv, bpf: Fix kfunc parameters incompatibility between bpf and riscv abi (2024-03-25 11:39:31 -0700) ---------------------------------------------------------------- bpf-for-netdev ---------------------------------------------------------------- Alexei Starovoitov (4): bpf: Clarify bpf_arena comments. libbpf, selftests/bpf: Adjust libbpf, bpftool, selftests to match LLVM selftests/bpf: Remove hard coded PAGE_SIZE macro. selftests/bpf: Add arena test case for 4Gbyte corner case Andrii Nakryiko (2): Merge branch 'bpf-arena-followups' libbpf: fix u64-to-pointer cast on 32-bit arches Arnaldo Carvalho de Melo (1): libbpf: Define MFD_CLOEXEC if not available Artem Savkov (1): arm64: bpf: fix 32bit unconditional bswap Hangbin Liu (1): scripts/bpf_doc: Use silent mode when exec make cmd Ilya Leoshkevich (1): s390/bpf: Fix bpf_plt pointer arithmetic Pu Lehui (1): riscv, bpf: Fix kfunc parameters incompatibility between bpf and riscv abi Puranjay Mohan (5): bpf: Temporarily disable atomic operations in BPF arena bpf, arm64: fix bug in BPF_LDX_MEMSX bpf: verifier: fix addr_space_cast from as(1) to as(0) selftests/bpf: verifier_arena: fix mmap address for arm64 bpf: verifier: reject addr_space_cast insn without arena Quentin Monnet (1): MAINTAINERS: Update email address for Quentin Monnet Stanislav Fomichev (1): xsk: Don't assume metadata is always requested in TX completion .mailmap | 3 +- MAINTAINERS | 2 +- arch/arm64/net/bpf_jit_comp.c | 4 +- arch/riscv/net/bpf_jit_comp64.c | 16 +++++ arch/s390/net/bpf_jit_comp.c | 46 +++++++-------- include/net/xdp_sock.h | 2 + kernel/bpf/arena.c | 25 +++++--- kernel/bpf/verifier.c | 22 ++++++- scripts/bpf_doc.py | 4 +- tools/bpf/bpftool/gen.c | 2 +- tools/lib/bpf/libbpf.c | 10 +++- tools/testing/selftests/bpf/bpf_arena_common.h | 2 +- .../testing/selftests/bpf/prog_tests/arena_htab.c | 8 ++- .../testing/selftests/bpf/prog_tests/arena_list.c | 7 ++- tools/testing/selftests/bpf/prog_tests/verifier.c | 2 + tools/testing/selftests/bpf/progs/arena_htab.c | 2 +- tools/testing/selftests/bpf/progs/arena_list.c | 10 ++-- tools/testing/selftests/bpf/progs/verifier_arena.c | 10 +++- .../selftests/bpf/progs/verifier_arena_large.c | 68 ++++++++++++++++++++++ 19 files changed, 184 insertions(+), 61 deletions(-) create mode 100644 tools/testing/selftests/bpf/progs/verifier_arena_large.c