[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20211102013123.9005-1-alexei.starovoitov@gmail.com>
Date: Mon, 1 Nov 2021 18:31:23 -0700
From: Alexei Starovoitov <alexei.starovoitov@...il.com>
To: davem@...emloft.net
Cc: daniel@...earbox.net, kuba@...nel.org, andrii@...nel.org,
netdev@...r.kernel.org, bpf@...r.kernel.org, kernel-team@...com
Subject: pull-request: bpf-next 2021-11-01
Hi David, hi Jakub,
The following pull-request contains BPF updates for your *net-next* tree.
We've added 181 non-merge commits during the last 28 day(s) which contain
a total of 280 files changed, 11791 insertions(+), 5879 deletions(-).
The main changes are:
1) Fix bpf verifier propagation of 64-bit bounds, from Alexei.
2) Parallelize bpf test_progs, from Yucong and Andrii.
3) Deprecate various libbpf apis including af_xdp, from Andrii, Hengqi, Magnus.
4) Improve bpf selftests on s390, from Ilya.
5) bloomfilter bpf map type, from Joanne.
6) Big improvements to JIT tests especially on Mips, from Johan.
7) Support kernel module function calls from bpf, from Kumar.
8) Support typeless and weak ksym in light skeleton, from Kumar.
9) Disallow unprivileged bpf by default, from Pawan.
10) BTF_KIND_DECL_TAG support, from Yonghong.
11) Various bpftool cleanups, from Quentin.
Please consider pulling these changes from:
git://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git
There should be no merge conflicts. Thanks a lot!
Also thanks to reporters, reviewers and testers of commits in this pull-request:
Andrii Nakryiko, Björn Töpel, Cong Wang, Daniel Borkmann, Evgeny
Vereshchagin, Jakub Sitnicki, Jiaxun Yang, Johan Almbladh, John
Fastabend, Mark Rutland, Martin KaFai Lau, Pu Lehui, Quentin Monnet,
Shuah Khan, Song Liu, syzbot, Toke Høiland-Jørgensen, Yonghong Song,
Zeal Robot
----------------------------------------------------------------
The following changes since commit d0f1c248b4ff71cada1b9e4ed61a1992cd94c3df:
Merge tag 'for-net-next-2021-10-01' of git://git.kernel.org/pub/scm/linux/kernel/git/bluetooth/bluetooth-next (2021-10-05 07:41:16 -0700)
are available in the Git repository at:
https://git.kernel.org/pub/scm/linux/kernel/git/bpf/bpf-next.git
for you to fetch changes up to 0b170456e0dda92b8925d40e217461fcc4e1efc9:
libbpf: Deprecate AF_XDP support (2021-11-01 18:12:44 -0700)
----------------------------------------------------------------
Alexei Starovoitov (14):
Merge branch 'Support kernel module function calls from eBPF'
Merge branch 'Add bpf_skc_to_unix_sock() helper'
Merge branch 'libbpf: support custom .rodata.*/.data.* sections'
Merge branch 'bpf: add support for BTF_KIND_DECL_TAG typedef'
Merge branch 'Parallelize verif_scale selftests'
Merge branch 'libbpf: add bpf_program__insns() accessor'
Merge branch 'bpf: use 32bit safe version of u64_stats'
Merge branch 'Implement bloom filter map'
Merge branch 'Typeless/weak ksym for gen_loader + misc fixups'
Merge branch 'introduce dummy BPF STRUCT_OPS'
Merge branch '"map_extra" and bloom filter fixups'
bpf: Fix propagation of bounds from 64-bit min/max into 32-bit and var_off.
bpf: Fix propagation of signed bounds from 64-bit min/max into 32-bit.
selftests/bpf: Add a testcase for 64-bit bounds propagation issue.
Andrea Righi (1):
selftests/bpf: Fix fclose/pclose mismatch in test_progs
Andrey Ignatov (1):
bpf: Avoid retpoline for bpf_for_each_map_elem
Andrii Nakryiko (40):
libbpf: Add API that copies all BTF types from one BTF object to another
selftests/bpf: Refactor btf_write selftest to reuse BTF generation logic
selftests/bpf: Test new btf__add_btf() API
Merge branch 'libbpf: Deprecate bpf_{map,program}__{prev,next} APIs since v0.7'
Merge branch 'install libbpf headers when using the library'
Merge branch 'add support for writable bare tracepoint'
Merge branch 'selftests/bpf: Add parallelism to test_progs'
Merge branch 'fixes for bpftool's Makefile'
Merge branch 'btf_dump fixes for s390'
Merge branch 'bpf: keep track of verifier insn_processed'
Merge branch 'selftests/bpf: Fixes for perf_buffer test'
libbpf: Deprecate btf__finalize_data() and move it into libbpf.c
libbpf: Extract ELF processing state into separate struct
libbpf: Use Elf64-specific types explicitly for dealing with ELF
libbpf: Remove assumptions about uniqueness of .rodata/.data/.bss maps
bpftool: Support multiple .rodata/.data internal maps in skeleton
bpftool: Improve skeleton generation for data maps without DATASEC type
libbpf: Support multiple .rodata.* and .data.* BPF maps
selftests/bpf: Demonstrate use of custom .rodata/.data sections
libbpf: Simplify look up by name of internal maps
selftests/bpf: Switch to ".bss"/".rodata"/".data" lookups for internal maps
libbpf: Fix the use of aligned attribute
selftests/bpf: Make perf_buffer selftests work on 4.9 kernel again
Merge branch 'libbpf: Add btf__type_cnt() and btf__raw_data() APIs'
Merge branch 'libbpf: use func name when pinning programs with LIBBPF_STRICT_SEC_NAME'
libbpf: Fix overflow in BTF sanity checks
libbpf: Fix BTF header parsing checks
selftests/bpf: Normalize selftest entry points
selftests/bpf: Support multiple tests per file
selftests/bpf: Mark tc_redirect selftest as serial
selftests/bpf: Split out bpf_verif_scale selftests into multiple tests
Merge branch 'bpftool: Switch to libbpf's hashmap for referencing BPF objects'
libbpf: Fix off-by-one bug in bpf_core_apply_relo()
libbpf: Add ability to fetch bpf_program's underlying instructions
libbpf: Deprecate multi-instance bpf_program APIs
libbpf: Deprecate ambiguously-named bpf_program__size() API
Merge branch 'core_reloc fixes for s390'
Merge branch 'selftests/bpf: parallel mode improvement'
selftests/bpf: Fix strobemeta selftest regression
selftests/bpf: Fix also no-alu32 strobemeta selftest
Björn Töpel (4):
riscv, bpf: Increase the maximum number of iterations
tools, build: Add RISC-V to HOSTARCH parsing
riscv, libbpf: Add RISC-V (RV64) support to bpf_tracing.h
selftests, bpf: Fix broken riscv build
Brendan Jackman (1):
selftests/bpf: Some more atomic tests
Daniel Borkmann (2):
Merge branch 'bpf-mips-jit'
bpf, arm: Remove dummy bpf_jit_compile stub
Dave Marchevsky (4):
selftests/bpf: Remove SEC("version") from test progs
libbpf: Migrate internal use of bpf_program__get_prog_info_linear
bpf: Add verified_insns to bpf_prog_info and fdinfo
selftests/bpf: Add verif_stats test
David Yang (1):
samples/bpf: Fix application of sizeof to pointer
Eric Dumazet (4):
bpf: Avoid races in __bpf_prog_run() for 32bit arches
bpf: Fixes possible race in update_prog_stats() for 32bit arches
bpf: Use u64_stats_t in struct bpf_prog_stats
bpf: Add missing map_delete_elem method to bloom filter map
Grant Seltzer (1):
libbpf: Add API documentation convention guidelines
Hengqi Chen (10):
libbpf: Deprecate bpf_{map,program}__{prev,next} APIs since v0.7
selftests/bpf: Switch to new bpf_object__next_{map,program} APIs
libbpf: Deprecate bpf_object__unload() API since v0.6
bpf: Add bpf_skc_to_unix_sock() helper
selftests/bpf: Test bpf_skc_to_unix_sock() helper
libbpf: Add btf__type_cnt() and btf__raw_data() APIs
perf bpf: Switch to new btf__raw_data API
tools/resolve_btfids: Switch to new btf__type_cnt API
bpftool: Switch to new btf__type_cnt API
selftests/bpf: Switch to new btf__type_cnt/btf__raw_data APIs
Hou Tao (7):
bpf: Support writable context for bare tracepoint
libbpf: Support detecting and attaching of writable tracepoint program
bpf/selftests: Add test for writable bare tracepoint
bpf: Factor out a helper to prepare trampoline for struct_ops prog
bpf: Factor out helpers for ctx access checking
bpf: Add dummy BPF STRUCT_OPS for test purpose
selftests/bpf: Add test cases for struct_ops prog
Ilya Leoshkevich (11):
selftests/bpf: Skip verifier tests that fail to load with ENOTSUPP
selftests/bpf: Use cpu_number only on arches that have it
libbpf: Fix dumping big-endian bitfields
libbpf: Fix dumping non-aligned __int128
libbpf: Fix ptr_is_aligned() usages
libbpf: Fix endianness detection in BPF_CORE_READ_BITFIELD_PROBED()
libbpf: Use __BYTE_ORDER__
selftests/bpf: Use __BYTE_ORDER__
samples: seccomp: Use __BYTE_ORDER__
selftests/seccomp: Use __BYTE_ORDER__
selftests/bpf: Fix test_core_reloc_mods on big-endian machines
Jie Meng (2):
bpf, x64: Save bytes for DIV by reducing reg copies
bpf, x64: Factor out emission of REX byte in more cases
Jiri Olsa (5):
selftest/bpf: Switch recursion test to use htab_map_delete_elem
selftests/bpf: Fix perf_buffer test on system with offline cpus
selftests/bpf: Fix possible/online index mismatch in perf_buffer test
selftests/bpf: Use nanosleep tracepoint in perf buffer test
kbuild: Unify options for BTF generation for vmlinux and modules
Joanne Koong (8):
bpf: Add bloom filter map implementation
libbpf: Add "map_extra" as a per-map-type extra flag
selftests/bpf: Add bloom filter map test cases
bpf/benchs: Add benchmark tests for bloom filter throughput + false positive
bpf/benchs: Add benchmarks for comparing hashmap lookups w/ vs. w/out bloom filter
bpf: Bloom filter map naming fixups
bpf: Add alignment padding for "map_extra" + consolidate holes
selftests/bpf: Add bloom map success test for userspace calls
Joe Burton (1):
libbpf: Deprecate bpf_objects_list
Johan Almbladh (9):
mips, uasm: Add workaround for Loongson-2F nop CPU errata
mips, bpf: Add eBPF JIT for 32-bit MIPS
mips, bpf: Add new eBPF JIT for 64-bit MIPS
mips, bpf: Add JIT workarounds for CPU errata
mips, bpf: Enable eBPF JITs
mips, bpf: Remove old BPF JIT implementations
mips, bpf: Fix Makefile that referenced a removed file
mips, bpf: Optimize loading of 64-bit constants
bpf, tests: Add more LD_IMM64 tests
Kumar Kartikeya Dwivedi (18):
bpf: Introduce BPF support for kernel module function calls
bpf: Be conservative while processing invalid kfunc calls
bpf: btf: Introduce helpers for dynamic BTF set registration
tools: Allow specifying base BTF file in resolve_btfids
bpf: Enable TCP congestion control kfunc from modules
libbpf: Support kernel module function calls
libbpf: Resolve invalid weak kfunc calls with imm = 0, off = 0
libbpf: Update gen_loader to emit BTF_KIND_FUNC relocations
bpf: selftests: Add selftests for module kfunc support
bpf: Silence Coverity warning for find_kfunc_desc_btf
bpf: Add bpf_kallsyms_lookup_name helper
libbpf: Add typeless ksym support to gen_loader
libbpf: Add weak ksym support to gen_loader
libbpf: Ensure that BPF syscall fds are never 0, 1, or 2
libbpf: Use O_CLOEXEC uniformly when opening fds
selftests/bpf: Add weak/typeless ksym test for light skeleton
selftests/bpf: Fix fd cleanup in sk_lookup test
selftests/bpf: Fix memory leak in test_ima
Liu Jian (3):
skmsg: Lose offset info in sk_psock_skb_ingress
selftests, bpf: Fix test_txmsg_ingress_parser error
selftests, bpf: Add one test for sockmap with strparser
Magnus Karlsson (1):
libbpf: Deprecate AF_XDP support
Mauricio Vásquez (1):
libbpf: Fix memory leak in btf__dedup()
Pawan Gupta (1):
bpf: Disallow unprivileged bpf by default
Pu Lehui (1):
samples: bpf: Suppress readelf stderr when probing for BTF support
Qing Wang (1):
net: bpf: Switch over to memdup_user()
Quentin Monnet (25):
bpf: Use $(pound) instead of \# in Makefiles
libbpf: Skip re-installing headers file if source is older than target
bpftool: Remove unused includes to <bpf/bpf_gen_internal.h>
bpftool: Install libbpf headers instead of including the dir
tools/resolve_btfids: Install libbpf headers when building
tools/runqslower: Install libbpf headers when building
bpf: preload: Install libbpf headers when building
bpf: iterators: Install libbpf headers when building
samples/bpf: Update .gitignore
samples/bpf: Install libbpf headers when building
samples/bpf: Do not FORCE-recompile libbpf
selftests/bpf: Better clean up for runqslower in test_bpftool_build.sh
bpftool: Add install-bin target to install binary only
libbpf: Remove Makefile warnings on out-of-sync netlink.h/if_link.h
bpftool: Fix install for libbpf's internal header(s)
bpftool: Do not FORCE-build libbpf
bpftool: Turn check on zlib from a phony target into a conditional error
bpf/preload: Clean up .gitignore and "clean-files" target
bpftool: Remove useless #include to <perf-sys.h> from map_perf_ring.c
bpftool: Avoid leaking the JSON writer prepared for program metadata
bpftool: Remove Makefile dep. on $(LIBBPF) for $(LIBBPF_INTERNAL_HDRS)
bpftool: Do not expose and init hash maps for pinned path in main.c
bpftool: Switch to libbpf's hashmap for pinned paths of BPF objects
bpftool: Switch to libbpf's hashmap for programs/maps in BTF listing
bpftool: Switch to libbpf's hashmap for PIDs/names references
Song Liu (3):
selftests/bpf: Skip the second half of get_branch_snapshot in vm
selftests/bpf: Skip all serial_test_get_branch_snapshot in vm
selftests/bpf: Guess function end for test_get_branch_snapshot
Stanislav Fomichev (2):
libbpf: Use func name when pinning programs with LIBBPF_STRICT_SEC_NAME
selftests/bpf: Fix flow dissector tests
Tiezhu Yang (3):
bpf, mips: Clean up config options about JIT
bpf, mips: Fix comment on tail call count limiting
bpf, tests: Add module parameter test_suite to test_bpf module
Tong Tiangen (1):
riscv, bpf: Add BPF exception tables
Tony Ambardar (1):
mips, uasm: Enable muhu opcode for MIPS R6
Wan Jiabing (1):
selftests/bpf: Remove duplicated include in cgroup_helpers
Yonghong Song (6):
bpf: Rename BTF_KIND_TAG to BTF_KIND_DECL_TAG
bpf: Add BTF_KIND_DECL_TAG typedef support
selftests/bpf: Add BTF_KIND_DECL_TAG typedef unit tests
selftests/bpf: Test deduplication for BTF_KIND_DECL_TAG typedef
selftests/bpf: Add BTF_KIND_DECL_TAG typedef example in tag.c
docs/bpf: Update documentation for BTF_KIND_DECL_TAG typedef support
Yucong Sun (12):
selftests/bpf: Fix btf_dump test under new clang
selftests/bpf: Add parallelism to test_progs
selftests/bpf: Allow some tests to be executed in sequence
selftests/bpf: Add per worker cgroup suffix
selftests/bpf: Fix race condition in enable_stats
selftests/bpf: Make cgroup_v1v2 use its own port
selftests/bpf: Adding pid filtering for atomics test
selftests/bpf: Fix pid check in fexit_sleep test
selfetest/bpf: Make some tests serial
selfetests/bpf: Update vmtest.sh defaults
selftests/bpf: Fix attach_probe in parallel mode
selftests/bpf: Adding a namespace reset for tc_redirect
Documentation/bpf/btf.rst | 28 +-
.../bpf/libbpf/libbpf_naming_convention.rst | 40 +
MAINTAINERS | 1 +
Makefile | 3 +
arch/arm/net/bpf_jit_32.c | 5 -
arch/mips/Kconfig | 15 +-
arch/mips/include/asm/uasm.h | 5 +
arch/mips/mm/uasm-mips.c | 4 +-
arch/mips/mm/uasm.c | 3 +-
arch/mips/net/Makefile | 9 +-
arch/mips/net/bpf_jit.c | 1299 -------------
arch/mips/net/bpf_jit.h | 81 -
arch/mips/net/bpf_jit_asm.S | 285 ---
arch/mips/net/bpf_jit_comp.c | 1034 +++++++++++
arch/mips/net/bpf_jit_comp.h | 235 +++
arch/mips/net/bpf_jit_comp32.c | 1899 +++++++++++++++++++
arch/mips/net/bpf_jit_comp64.c | 1060 +++++++++++
arch/mips/net/ebpf_jit.c | 1938 --------------------
arch/riscv/mm/extable.c | 19 +-
arch/riscv/net/bpf_jit.h | 1 +
arch/riscv/net/bpf_jit_comp64.c | 185 +-
arch/riscv/net/bpf_jit_core.c | 21 +-
arch/x86/net/bpf_jit_comp.c | 130 +-
include/linux/bpf.h | 59 +-
include/linux/bpf_types.h | 1 +
include/linux/bpf_verifier.h | 2 +
include/linux/bpfptr.h | 1 +
include/linux/btf.h | 39 +
include/linux/filter.h | 15 +-
include/linux/skmsg.h | 18 +-
include/trace/bpf_probe.h | 19 +-
include/uapi/linux/bpf.h | 34 +
include/uapi/linux/btf.h | 8 +-
kernel/bpf/Kconfig | 7 +
kernel/bpf/Makefile | 2 +-
kernel/bpf/bloom_filter.c | 204 +++
kernel/bpf/bpf_struct_ops.c | 32 +-
kernel/bpf/bpf_struct_ops_types.h | 3 +
kernel/bpf/btf.c | 103 +-
kernel/bpf/core.c | 4 +
kernel/bpf/preload/.gitignore | 4 +-
kernel/bpf/preload/Makefile | 26 +-
kernel/bpf/preload/iterators/Makefile | 38 +-
kernel/bpf/syscall.c | 77 +-
kernel/bpf/trampoline.c | 12 +-
kernel/bpf/verifier.c | 250 ++-
kernel/trace/bpf_trace.c | 18 +-
lib/test_bpf.c | 332 +++-
net/bpf/Makefile | 3 +
net/bpf/bpf_dummy_struct_ops.c | 200 ++
net/bpf/test_run.c | 28 +-
net/core/filter.c | 23 +
net/core/skmsg.c | 43 +-
net/ipv4/bpf_tcp_ca.c | 45 +-
net/ipv4/tcp_bbr.c | 28 +-
net/ipv4/tcp_cubic.c | 26 +-
net/ipv4/tcp_dctcp.c | 26 +-
samples/bpf/.gitignore | 4 +
samples/bpf/Makefile | 47 +-
samples/bpf/xdp1_user.c | 2 +-
samples/bpf/xdp_redirect_cpu_user.c | 6 +-
samples/bpf/xdp_sample_pkts_user.c | 2 +-
samples/seccomp/bpf-helper.h | 8 +-
scripts/Makefile.modfinal | 3 +-
scripts/bpf_doc.py | 2 +
scripts/link-vmlinux.sh | 11 +-
scripts/pahole-flags.sh | 20 +
tools/bpf/bpftool/Makefile | 60 +-
tools/bpf/bpftool/btf.c | 150 +-
tools/bpf/bpftool/common.c | 50 +-
tools/bpf/bpftool/gen.c | 161 +-
tools/bpf/bpftool/iter.c | 2 +-
tools/bpf/bpftool/link.c | 45 +-
tools/bpf/bpftool/main.c | 17 +-
tools/bpf/bpftool/main.h | 54 +-
tools/bpf/bpftool/map.c | 45 +-
tools/bpf/bpftool/map_perf_ring.c | 1 -
tools/bpf/bpftool/pids.c | 90 +-
tools/bpf/bpftool/prog.c | 64 +-
tools/bpf/resolve_btfids/Makefile | 16 +-
tools/bpf/resolve_btfids/main.c | 36 +-
tools/bpf/runqslower/Makefile | 22 +-
tools/include/uapi/linux/bpf.h | 34 +
tools/include/uapi/linux/btf.h | 8 +-
tools/lib/bpf/Makefile | 35 +-
tools/lib/bpf/bpf.c | 63 +-
tools/lib/bpf/bpf_core_read.h | 2 +-
tools/lib/bpf/bpf_gen_internal.h | 24 +-
tools/lib/bpf/bpf_tracing.h | 32 +
tools/lib/bpf/btf.c | 321 ++--
tools/lib/bpf/btf.h | 39 +-
tools/lib/bpf/btf_dump.c | 64 +-
tools/lib/bpf/gen_loader.c | 419 ++++-
tools/lib/bpf/libbpf.c | 1241 ++++++++-----
tools/lib/bpf/libbpf.h | 85 +-
tools/lib/bpf/libbpf.map | 13 +-
tools/lib/bpf/libbpf_internal.h | 64 +-
tools/lib/bpf/libbpf_legacy.h | 9 +
tools/lib/bpf/libbpf_probes.c | 2 +-
tools/lib/bpf/linker.c | 45 +-
tools/lib/bpf/relo_core.c | 2 +-
tools/lib/bpf/xsk.c | 6 +-
tools/lib/bpf/xsk.h | 90 +-
tools/perf/util/bpf-event.c | 2 +-
tools/scripts/Makefile.arch | 3 +-
tools/testing/selftests/bpf/Makefile | 52 +-
tools/testing/selftests/bpf/README.rst | 4 +-
tools/testing/selftests/bpf/bench.c | 60 +-
tools/testing/selftests/bpf/bench.h | 3 +
.../selftests/bpf/benchs/bench_bloom_filter_map.c | 477 +++++
.../bpf/benchs/run_bench_bloom_filter_map.sh | 45 +
.../selftests/bpf/benchs/run_bench_ringbufs.sh | 30 +-
tools/testing/selftests/bpf/benchs/run_common.sh | 60 +
.../selftests/bpf/bpf_testmod/bpf_testmod-events.h | 15 +
.../selftests/bpf/bpf_testmod/bpf_testmod.c | 33 +-
.../selftests/bpf/bpf_testmod/bpf_testmod.h | 5 +
tools/testing/selftests/bpf/btf_helpers.c | 12 +-
tools/testing/selftests/bpf/cgroup_helpers.c | 5 +-
tools/testing/selftests/bpf/cgroup_helpers.h | 2 +-
tools/testing/selftests/bpf/flow_dissector_load.c | 18 +-
tools/testing/selftests/bpf/flow_dissector_load.h | 10 +-
tools/testing/selftests/bpf/prog_tests/atomics.c | 35 +-
.../selftests/bpf/prog_tests/attach_probe.c | 9 +-
.../selftests/bpf/prog_tests/bloom_filter_map.c | 211 +++
.../selftests/bpf/prog_tests/bpf_iter_setsockopt.c | 2 +-
.../testing/selftests/bpf/prog_tests/bpf_obj_id.c | 2 +-
.../selftests/bpf/prog_tests/bpf_verif_scale.c | 225 ++-
tools/testing/selftests/bpf/prog_tests/btf.c | 247 ++-
tools/testing/selftests/bpf/prog_tests/btf_dump.c | 12 +-
.../testing/selftests/bpf/prog_tests/btf_endian.c | 18 +-
tools/testing/selftests/bpf/prog_tests/btf_split.c | 2 +-
tools/testing/selftests/bpf/prog_tests/btf_write.c | 159 +-
.../selftests/bpf/prog_tests/cg_storage_multi.c | 2 +-
.../bpf/prog_tests/cgroup_attach_autodetach.c | 2 +-
.../selftests/bpf/prog_tests/cgroup_attach_multi.c | 2 +-
.../bpf/prog_tests/cgroup_attach_override.c | 2 +-
.../testing/selftests/bpf/prog_tests/cgroup_link.c | 2 +-
.../testing/selftests/bpf/prog_tests/cgroup_v1v2.c | 2 +-
tools/testing/selftests/bpf/prog_tests/check_mtu.c | 2 +-
.../selftests/bpf/prog_tests/core_autosize.c | 4 +-
.../testing/selftests/bpf/prog_tests/core_reloc.c | 4 +-
.../selftests/bpf/prog_tests/dummy_st_ops.c | 115 ++
.../selftests/bpf/prog_tests/fentry_fexit.c | 16 +-
.../testing/selftests/bpf/prog_tests/fentry_test.c | 14 +-
.../selftests/bpf/prog_tests/fexit_bpf2bpf.c | 9 +-
.../testing/selftests/bpf/prog_tests/fexit_sleep.c | 12 +-
.../testing/selftests/bpf/prog_tests/fexit_test.c | 14 +-
.../bpf/prog_tests/flow_dissector_load_bytes.c | 2 +-
.../bpf/prog_tests/flow_dissector_reattach.c | 2 +-
.../selftests/bpf/prog_tests/get_branch_snapshot.c | 39 +-
.../testing/selftests/bpf/prog_tests/global_data.c | 11 +-
.../selftests/bpf/prog_tests/global_data_init.c | 2 +-
tools/testing/selftests/bpf/prog_tests/kfree_skb.c | 5 +-
.../testing/selftests/bpf/prog_tests/kfunc_call.c | 6 +-
tools/testing/selftests/bpf/prog_tests/ksyms_btf.c | 35 +-
.../selftests/bpf/prog_tests/ksyms_module.c | 57 +-
.../selftests/bpf/prog_tests/migrate_reuseport.c | 2 +-
.../selftests/bpf/prog_tests/modify_return.c | 3 +-
.../selftests/bpf/prog_tests/module_attach.c | 35 +
.../selftests/bpf/prog_tests/ns_current_pid_tgid.c | 3 +-
.../testing/selftests/bpf/prog_tests/perf_buffer.c | 24 +-
tools/testing/selftests/bpf/prog_tests/perf_link.c | 3 +-
.../testing/selftests/bpf/prog_tests/probe_user.c | 3 +-
.../bpf/prog_tests/raw_tp_writable_test_run.c | 3 +-
.../testing/selftests/bpf/prog_tests/rdonly_maps.c | 2 +-
tools/testing/selftests/bpf/prog_tests/recursion.c | 10 +-
.../selftests/bpf/prog_tests/resolve_btfids.c | 14 +-
tools/testing/selftests/bpf/prog_tests/ringbuf.c | 12 +-
.../selftests/bpf/prog_tests/select_reuseport.c | 4 +-
.../bpf/prog_tests/send_signal_sched_switch.c | 3 +-
.../selftests/bpf/prog_tests/signal_pending.c | 2 +-
tools/testing/selftests/bpf/prog_tests/sk_lookup.c | 4 +-
.../selftests/bpf/prog_tests/sk_storage_tracing.c | 2 +-
.../selftests/bpf/prog_tests/skc_to_unix_sock.c | 54 +
tools/testing/selftests/bpf/prog_tests/skeleton.c | 29 +
tools/testing/selftests/bpf/prog_tests/snprintf.c | 4 +-
.../selftests/bpf/prog_tests/snprintf_btf.c | 2 +-
.../testing/selftests/bpf/prog_tests/sock_fields.c | 2 +-
.../selftests/bpf/prog_tests/sockmap_listen.c | 2 +-
.../testing/selftests/bpf/prog_tests/tc_redirect.c | 16 +-
tools/testing/selftests/bpf/prog_tests/tcp_rtt.c | 2 +-
tools/testing/selftests/bpf/prog_tests/test_ima.c | 3 +-
tools/testing/selftests/bpf/prog_tests/timer.c | 3 +-
tools/testing/selftests/bpf/prog_tests/timer_mim.c | 2 +-
.../selftests/bpf/prog_tests/tp_attach_query.c | 2 +-
.../selftests/bpf/prog_tests/trace_printk.c | 16 +-
.../selftests/bpf/prog_tests/trace_vprintk.c | 14 +-
.../selftests/bpf/prog_tests/trampoline_count.c | 3 +-
.../testing/selftests/bpf/prog_tests/verif_stats.c | 28 +
.../selftests/bpf/prog_tests/xdp_adjust_tail.c | 6 +-
.../testing/selftests/bpf/prog_tests/xdp_attach.c | 2 +-
.../testing/selftests/bpf/prog_tests/xdp_bonding.c | 2 +-
.../selftests/bpf/prog_tests/xdp_cpumap_attach.c | 2 +-
.../selftests/bpf/prog_tests/xdp_devmap_attach.c | 6 +-
tools/testing/selftests/bpf/prog_tests/xdp_info.c | 2 +-
tools/testing/selftests/bpf/prog_tests/xdp_link.c | 2 +-
tools/testing/selftests/bpf/progs/atomics.c | 16 +
.../selftests/bpf/progs/bloom_filter_bench.c | 153 ++
.../testing/selftests/bpf/progs/bloom_filter_map.c | 82 +
.../bpf/progs/btf_dump_test_case_bitfields.c | 10 +-
.../bpf/progs/btf_dump_test_case_packing.c | 4 +-
.../bpf/progs/btf_dump_test_case_padding.c | 2 +-
.../bpf/progs/btf_dump_test_case_syntax.c | 2 +-
.../bpf/progs/cgroup_skb_sk_lookup_kern.c | 1 -
.../testing/selftests/bpf/progs/connect4_dropper.c | 2 +-
tools/testing/selftests/bpf/progs/connect4_prog.c | 2 -
tools/testing/selftests/bpf/progs/connect6_prog.c | 2 -
.../selftests/bpf/progs/connect_force_port4.c | 1 -
.../selftests/bpf/progs/connect_force_port6.c | 1 -
tools/testing/selftests/bpf/progs/dev_cgroup.c | 1 -
tools/testing/selftests/bpf/progs/dummy_st_ops.c | 50 +
tools/testing/selftests/bpf/progs/fexit_sleep.c | 4 +-
.../selftests/bpf/progs/get_cgroup_id_kern.c | 1 -
tools/testing/selftests/bpf/progs/map_ptr_kern.c | 1 -
tools/testing/selftests/bpf/progs/netcnt_prog.c | 1 -
tools/testing/selftests/bpf/progs/recursion.c | 9 +-
tools/testing/selftests/bpf/progs/sendmsg4_prog.c | 2 -
tools/testing/selftests/bpf/progs/sendmsg6_prog.c | 2 -
.../selftests/bpf/progs/sockmap_parse_prog.c | 2 -
.../selftests/bpf/progs/sockmap_tcp_msg_prog.c | 2 -
.../selftests/bpf/progs/sockmap_verdict_prog.c | 2 -
.../testing/selftests/bpf/progs/sockopt_inherit.c | 1 -
tools/testing/selftests/bpf/progs/strobemeta.h | 4 +-
tools/testing/selftests/bpf/progs/tag.c | 15 +-
tools/testing/selftests/bpf/progs/tcp_rtt.c | 1 -
tools/testing/selftests/bpf/progs/test_btf_haskv.c | 2 -
tools/testing/selftests/bpf/progs/test_btf_newkv.c | 2 -
tools/testing/selftests/bpf/progs/test_btf_nokv.c | 2 -
.../selftests/bpf/progs/test_core_reloc_mods.c | 9 +
.../selftests/bpf/progs/test_enable_stats.c | 2 +-
.../selftests/bpf/progs/test_ksyms_module.c | 46 +-
.../testing/selftests/bpf/progs/test_ksyms_weak.c | 2 +-
tools/testing/selftests/bpf/progs/test_l4lb.c | 2 -
.../testing/selftests/bpf/progs/test_map_in_map.c | 1 -
.../selftests/bpf/progs/test_module_attach.c | 14 +
.../testing/selftests/bpf/progs/test_perf_buffer.c | 18 +-
tools/testing/selftests/bpf/progs/test_pinning.c | 2 -
.../selftests/bpf/progs/test_pinning_invalid.c | 2 -
.../testing/selftests/bpf/progs/test_pkt_access.c | 1 -
.../selftests/bpf/progs/test_queue_stack_map.h | 2 -
.../bpf/progs/test_select_reuseport_kern.c | 2 -
tools/testing/selftests/bpf/progs/test_sk_lookup.c | 1 -
.../selftests/bpf/progs/test_skb_cgroup_id_kern.c | 2 -
tools/testing/selftests/bpf/progs/test_skb_ctx.c | 1 -
.../selftests/bpf/progs/test_skc_to_unix_sock.c | 40 +
tools/testing/selftests/bpf/progs/test_skeleton.c | 18 +
.../selftests/bpf/progs/test_sockmap_kern.h | 1 -
.../selftests/bpf/progs/test_sockmap_listen.c | 1 -
.../selftests/bpf/progs/test_stacktrace_build_id.c | 1 -
.../testing/selftests/bpf/progs/test_tcp_estats.c | 1 -
.../testing/selftests/bpf/progs/test_tcpbpf_kern.c | 1 -
.../selftests/bpf/progs/test_tcpnotify_kern.c | 2 -
.../testing/selftests/bpf/progs/test_tracepoint.c | 1 -
.../testing/selftests/bpf/progs/test_tunnel_kern.c | 2 -
tools/testing/selftests/bpf/progs/test_xdp.c | 2 -
tools/testing/selftests/bpf/progs/test_xdp_loop.c | 2 -
.../selftests/bpf/progs/test_xdp_redirect.c | 2 -
tools/testing/selftests/bpf/progs/twfw.c | 58 +
tools/testing/selftests/bpf/test_bpftool_build.sh | 4 +
tools/testing/selftests/bpf/test_btf.h | 4 +-
tools/testing/selftests/bpf/test_flow_dissector.sh | 10 +-
tools/testing/selftests/bpf/test_progs.c | 675 ++++++-
tools/testing/selftests/bpf/test_progs.h | 38 +-
tools/testing/selftests/bpf/test_sockmap.c | 35 +-
tools/testing/selftests/bpf/test_sysctl.c | 4 +-
tools/testing/selftests/bpf/test_verifier.c | 12 +-
tools/testing/selftests/bpf/trace_helpers.c | 36 -
tools/testing/selftests/bpf/trace_helpers.h | 5 -
.../testing/selftests/bpf/verifier/array_access.c | 2 +-
.../selftests/bpf/verifier/atomic_cmpxchg.c | 38 +
.../testing/selftests/bpf/verifier/atomic_fetch.c | 57 +
.../selftests/bpf/verifier/atomic_invalid.c | 25 +
tools/testing/selftests/bpf/verifier/calls.c | 23 +
tools/testing/selftests/bpf/verifier/ctx_skb.c | 14 +-
tools/testing/selftests/bpf/verifier/jit.c | 47 +
tools/testing/selftests/bpf/verifier/lwt.c | 2 +-
.../bpf/verifier/perf_event_sample_period.c | 6 +-
tools/testing/selftests/bpf/vmtest.sh | 6 +-
tools/testing/selftests/bpf/xdping.c | 2 +-
tools/testing/selftests/seccomp/seccomp_bpf.c | 6 +-
280 files changed, 11791 insertions(+), 5879 deletions(-)
delete mode 100644 arch/mips/net/bpf_jit.c
delete mode 100644 arch/mips/net/bpf_jit.h
delete mode 100644 arch/mips/net/bpf_jit_asm.S
create mode 100644 arch/mips/net/bpf_jit_comp.c
create mode 100644 arch/mips/net/bpf_jit_comp.h
create mode 100644 arch/mips/net/bpf_jit_comp32.c
create mode 100644 arch/mips/net/bpf_jit_comp64.c
delete mode 100644 arch/mips/net/ebpf_jit.c
create mode 100644 kernel/bpf/bloom_filter.c
create mode 100644 net/bpf/bpf_dummy_struct_ops.c
create mode 100755 scripts/pahole-flags.sh
create mode 100644 tools/testing/selftests/bpf/benchs/bench_bloom_filter_map.c
create mode 100755 tools/testing/selftests/bpf/benchs/run_bench_bloom_filter_map.sh
create mode 100644 tools/testing/selftests/bpf/benchs/run_common.sh
create mode 100644 tools/testing/selftests/bpf/prog_tests/bloom_filter_map.c
create mode 100644 tools/testing/selftests/bpf/prog_tests/dummy_st_ops.c
create mode 100644 tools/testing/selftests/bpf/prog_tests/skc_to_unix_sock.c
create mode 100644 tools/testing/selftests/bpf/prog_tests/verif_stats.c
create mode 100644 tools/testing/selftests/bpf/progs/bloom_filter_bench.c
create mode 100644 tools/testing/selftests/bpf/progs/bloom_filter_map.c
create mode 100644 tools/testing/selftests/bpf/progs/dummy_st_ops.c
create mode 100644 tools/testing/selftests/bpf/progs/test_skc_to_unix_sock.c
create mode 100644 tools/testing/selftests/bpf/progs/twfw.c
create mode 100644 tools/testing/selftests/bpf/verifier/atomic_fetch.c
create mode 100644 tools/testing/selftests/bpf/verifier/atomic_invalid.c
Powered by blists - more mailing lists