Andrii Nakryiko
686f600bca
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: a12978712d9001b060bcc10eaae42ad5102abe2b
Checkpoint bpf-next commit: ec5b8c76ab1c6d163762d60cfbedcd27e7527144
Baseline bpf commit: b1c4b4d45263241ec6c2405a8df8265d4b58e707
Checkpoint bpf commit: e1533b6319ab9c3a97dad314dd88b3783bc41b69
Alan Maguire (1):
libbpf: Fix error handling in btf__distill_base()
Andreas Ziegler (1):
libbpf: Add NULL checks to bpf_object__{prev_map,next_map}
Andrii Nakryiko (2):
libbpf: fix BPF skeleton forward/backward compat handling
libbpf: improve old BPF skeleton handling for map auto-attach
src/btf.c | 2 +-
src/libbpf.c | 75 +++++++++++++++++++++++++++++-----------------------
2 files changed, 43 insertions(+), 34 deletions(-)
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2024-07-10 14:22:00 -07:00
Andrii Nakryiko
223cd2273e
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 531876c80004ecff7bfdbd8ba6c6b48835ef5e22
Checkpoint bpf-next commit: a12978712d9001b060bcc10eaae42ad5102abe2b
Baseline bpf commit: 62da3acd28955e7299babebdfcb14243b789e773
Checkpoint bpf commit: b1c4b4d45263241ec6c2405a8df8265d4b58e707
Alan Maguire (6):
libbpf: Add btf__distill_base() creating split BTF with distilled base
BTF
libbpf: Split BTF relocation
libbpf: BTF relocation followup fixing naming, loop logic
libbpf: Split field iter code into its own file kernel
libbpf,bpf: Share BTF relocate-related code with kernel
libbpf: Fix clang compilation error in btf_relocate.c
Andrii Nakryiko (4):
libbpf: Add BTF field iterator
libbpf: Make use of BTF field iterator in BPF linker code
libbpf: Make use of BTF field iterator in BTF handling code
libbpf: Remove callback-based type/string BTF field visitor helpers
Antoine Tenart (1):
libbpf: Skip base btf sanity checks
Donglin Peng (1):
libbpf: Checking the btf_type kind when fixing variable offsets
Eduard Zingerman (1):
libbpf: Make btf_parse_elf process .BTF.base transparently
Mykyta Yatsenko (1):
libbpf: Auto-attach struct_ops BPF maps in BPF skeleton
Vadim Fedorenko (1):
bpf: Add CHECKSUM_COMPLETE to bpf test progs
include/uapi/linux/bpf.h | 2 +
src/btf.c | 696 +++++++++++++++++++++++++++------------
src/btf.h | 36 ++
src/btf_iter.c | 177 ++++++++++
src/btf_relocate.c | 519 +++++++++++++++++++++++++++++
src/libbpf.c | 64 +++-
src/libbpf.h | 18 +
src/libbpf.map | 4 +
src/libbpf_internal.h | 29 +-
src/linker.c | 69 ++--
10 files changed, 1378 insertions(+), 236 deletions(-)
create mode 100644 src/btf_iter.c
create mode 100644 src/btf_relocate.c
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2024-06-27 10:01:42 -07:00
Andrii Nakryiko
ff856238e2
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: eb4e7726279a344c82e3c23be396bcfd0a4d5669
Checkpoint bpf-next commit: 531876c80004ecff7bfdbd8ba6c6b48835ef5e22
Baseline bpf commit: 9dfdb706e164ae869b1d97f83ebf8523b2809714
Checkpoint bpf commit: 62da3acd28955e7299babebdfcb14243b789e773
Andrii Nakryiko (1):
libbpf: keep FD_CLOEXEC flag when dup()'ing FD
Jakub Kicinski (1):
netdev: add qstat for csum complete
include/uapi/linux/netdev.h | 1 +
src/libbpf_internal.h | 10 +++-------
2 files changed, 4 insertions(+), 7 deletions(-)
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2024-06-03 13:41:26 -07:00
Andrii Nakryiko
9a1f1f28c6
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 009367099eb61a4fc2af44d4eb06b6b4de7de6db
Checkpoint bpf-next commit: eb4e7726279a344c82e3c23be396bcfd0a4d5669
Baseline bpf commit: 3e9bc0472b910d4115e16e9c2d684c7757cb6c60
Checkpoint bpf commit: 9dfdb706e164ae869b1d97f83ebf8523b2809714
Abhishek Chauhan (1):
net: Add additional bit to support clockid_t timestamp type
Andrii Nakryiko (2):
libbpf: fix feature detectors when using token_fd
libbpf: detect broken PID filtering logic for multi-uprobe
Arnaldo Carvalho de Melo (1):
tools headers: Remove now unused copies of uapi/{fcntl,openat2}.h and
asm/fcntl.h
Daniel Jurgens (1):
netdev: Add queue stats for TX stop and wake
Mykyta Yatsenko (1):
libbpf: Configure log verbosity with env variable
Xuan Zhuo (1):
netdev: add queue stats
docs/libbpf_overview.rst | 8 +++
include/uapi/linux/bpf.h | 15 +++--
include/uapi/linux/fcntl.h | 123 -----------------------------------
include/uapi/linux/netdev.h | 21 ++++++
include/uapi/linux/openat2.h | 43 ------------
src/bpf.c | 2 +-
src/features.c | 33 +++++++++-
src/libbpf.c | 25 ++++++-
src/libbpf.h | 5 +-
9 files changed, 99 insertions(+), 176 deletions(-)
delete mode 100644 include/uapi/linux/fcntl.h
delete mode 100644 include/uapi/linux/openat2.h
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2024-05-28 20:39:55 -07:00
Andrii Nakryiko
02724cfd07
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 0737df6de94661ae55fd3343ce9abec32c687e62
Checkpoint bpf-next commit: 009367099eb61a4fc2af44d4eb06b6b4de7de6db
Baseline bpf commit: 3e9bc0472b910d4115e16e9c2d684c7757cb6c60
Checkpoint bpf commit: 3e9bc0472b910d4115e16e9c2d684c7757cb6c60
Andrii Nakryiko (6):
libbpf: fix potential overflow in ring__consume_n()
libbpf: fix ring_buffer__consume_n() return result logic
libbpf: remove unnecessary struct_ops prog validity check
libbpf: handle yet another corner case of nulling out struct_ops
program
libbpf: fix libbpf_strerror_r() handling unknown errors
libbpf: improve early detection of doomed-to-fail BPF program loading
Jiri Olsa (2):
libbpf: Fix error message in attach_kprobe_session
libbpf: Fix error message in attach_kprobe_multi
Jose E. Marchesi (3):
libbpf: Fix bpf_ksym_exists() in GCC
libbpf: Avoid casts from pointers to enums in bpf_tracing.h
bpf: Avoid uninitialized value in BPF_CORE_READ_BITFIELD
src/bpf_core_read.h | 1 +
src/bpf_helpers.h | 17 +++++++++--
src/bpf_tracing.h | 70 ++++++++++++++++++++++-----------------------
src/libbpf.c | 42 ++++++++++++++++++---------
src/ringbuf.c | 4 +--
src/str_error.c | 16 +++++++++--
src/usdt.bpf.h | 24 ++++++++--------
7 files changed, 106 insertions(+), 68 deletions(-)
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2024-05-08 16:04:40 -07:00
Andrii Nakryiko
255b705a16
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 1bba3b3d373dbafae891e7cb06b8c82c8d62aba1
Checkpoint bpf-next commit: 0737df6de94661ae55fd3343ce9abec32c687e62
Baseline bpf commit: b867247555c4181bf84eb10b72b176862c29112d
Checkpoint bpf commit: 3e9bc0472b910d4115e16e9c2d684c7757cb6c60
Andrii Nakryiko (1):
libbpf: better fix for handling nulled-out struct_ops program
Jiri Olsa (3):
bpf: Add support for kprobe session attach
libbpf: Add support for kprobe session attach
libbpf: Add kprobe session attach type name to attach_type_name
Viktor Malik (1):
libbpf: support "module: Function" syntax for tracing programs
include/uapi/linux/bpf.h | 1 +
src/bpf.c | 1 +
src/libbpf.c | 112 +++++++++++++++++++++++++++++++--------
src/libbpf.h | 4 +-
4 files changed, 95 insertions(+), 23 deletions(-)
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2024-05-01 15:20:15 -07:00
Andrii Nakryiko
37b8e0eb2d
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 82e38a505c9868e784ec31e743fd8a9fa5ca1084
Checkpoint bpf-next commit: 1bba3b3d373dbafae891e7cb06b8c82c8d62aba1
Baseline bpf commit: 5bcf0dcbf9066348058b88a510c57f70f384c92c
Checkpoint bpf commit: b867247555c4181bf84eb10b72b176862c29112d
Andrii Nakryiko (1):
libbpf: handle nulled-out program in struct_ops correctly
Jose E. Marchesi (1):
bpf_helpers.h: Define bpf_tail_call_static when building with GCC
Philo Lu (1):
bpf: add mrtt and srtt as BPF_SOCK_OPS_RTT_CB args
include/uapi/linux/bpf.h | 2 ++
src/bpf_helpers.h | 4 +++-
src/libbpf.c | 1 +
3 files changed, 6 insertions(+), 1 deletion(-)
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2024-04-30 09:09:32 -07:00
Yonghong Song
7cbfddfdf2
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 14bb1e8c8d4ad5d9d2febb7d19c70a3cf536e1e5
Checkpoint bpf-next commit: 82e38a505c9868e784ec31e743fd8a9fa5ca1084
Baseline bpf commit: 443574b033876c85a35de4c65c14f7fe092222b2
Checkpoint bpf commit: 5bcf0dcbf9066348058b88a510c57f70f384c92c
Andrea Righi (3):
libbpf: Start v1.5 development cycle
libbpf: ringbuf: Allow to consume up to a certain amount of items
libbpf: Add ring__consume_n / ring_buffer__consume_n
Anton Protopopov (2):
bpf: Add support for passing mark with bpf_fib_lookup
bpf: Pack struct bpf_fib_lookup
Benjamin Tissoires (1):
tools: sync include/uapi/linux/bpf.h
David Lechner (1):
bpf: Fix typo in uapi doc comments
Mykyta Yatsenko (1):
bpf: improve error message for unsupported helper
Quentin Deslandes (2):
libbpf: Fix misaligned array closing bracket
libbpf: Fix dump of subsequent char arrays
Tobias Böhm (1):
libbpf: Use local bpf_helpers.h include
Yonghong Song (4):
libbpf: Mark libbpf_kallsyms_parse static function
libbpf: Handle <orig_name>.llvm.<hash> symbol properly
bpf: Add bpf_link support for sk_msg and sk_skb progs
libbpf: Add bpf_link support for BPF_PROG_TYPE_SOCKMAP
include/uapi/linux/bpf.h | 35 +++++++++++++++++++++----
src/bpf_core_read.h | 2 +-
src/btf_dump.c | 5 ++++
src/libbpf.c | 33 ++++++++++++++++++++++--
src/libbpf.h | 14 ++++++++++
src/libbpf.map | 7 +++++
src/libbpf_internal.h | 5 ----
src/libbpf_probes.c | 6 +++--
src/libbpf_version.h | 2 +-
src/ringbuf.c | 55 +++++++++++++++++++++++++++++++++-------
10 files changed, 139 insertions(+), 25 deletions(-)
Signed-off-by: Yonghong Song <yonghong.song@linux.dev >
2024-04-24 15:16:35 -07:00
Andrii Nakryiko
8db4a2feeb
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: e63985ecd22681c7f5975f2e8637187a326b6791
Checkpoint bpf-next commit: 14bb1e8c8d4ad5d9d2febb7d19c70a3cf536e1e5
Baseline bpf commit: 2487007aa3b9fafbd2cb14068f49791ce1d7ede5
Checkpoint bpf commit: 443574b033876c85a35de4c65c14f7fe092222b2
Alexei Starovoitov (6):
libbpf: Allow specifying 64-bit integers in map BTF.
bpf: Introduce bpf_arena.
bpf: Disasm support for addr_space_cast instruction.
libbpf: Add __arg_arena to bpf_helpers.h
libbpf: Add support for bpf_arena.
libbpf, selftests/bpf: Adjust libbpf, bpftool, selftests to match LLVM
Andrii Nakryiko (4):
libbpf: Recognize __arena global variables.
bpf: support BPF cookie in raw tracepoint (raw_tp, tp_btf) programs
libbpf: add support for BPF cookie for raw_tp/tp_btf programs
libbpf: fix u64-to-pointer cast on 32-bit arches
Arnaldo Carvalho de Melo (1):
libbpf: Define MFD_CLOEXEC if not available
Jakub Kicinski (2):
netdev: add per-queue statistics
netdev: add queue stat for alloc failures
Kui-Feng Lee (1):
libbpf: Skip zeroed or null fields if not found in the kernel type.
Mykyta Yatsenko (1):
libbpbpf: Check bpf_map/bpf_program fd validity
Quentin Monnet (1):
libbpf: Prevent null-pointer dereference when prog to load has no BTF
Yonghong Song (2):
libbpf: Add new sec_def "sk_skb/verdict"
bpf: Sync uapi bpf.h to tools directory
include/uapi/linux/bpf.h | 20 ++-
include/uapi/linux/netdev.h | 20 +++
src/bpf.c | 16 +-
src/bpf.h | 9 +
src/bpf_helpers.h | 2 +
src/libbpf.c | 322 +++++++++++++++++++++++++++++++-----
src/libbpf.h | 13 +-
src/libbpf.map | 2 +
src/libbpf_probes.c | 7 +
9 files changed, 366 insertions(+), 45 deletions(-)
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2024-03-25 21:58:26 -07:00
Andrii Nakryiko
4f875865b7
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 2ab256e93249f5ac1da665861aa0f03fb4208d9c
Checkpoint bpf-next commit: 7d763bc4a44a51e48dde406d6c6c8a26a60ec647
Baseline bpf commit: dced881ead78e4d6add3735d02a9186ba2415630
Checkpoint bpf commit: 2487007aa3b9fafbd2cb14068f49791ce1d7ede5
Aahil Awatramani (1):
bonding: Add independent control state machine
Alexei Starovoitov (1):
bpf: Introduce may_goto instruction
Chen Shen (1):
libbpf: Correct debug message in btf__load_vmlinux_btf
Eduard Zingerman (7):
libbpf: Allow version suffixes (___smth) for struct_ops types
libbpf: Tie struct_ops programs to kernel BTF ids, not to local ids
libbpf: Honor autocreate flag for struct_ops maps
libbpf: Sync progs autoload with maps autocreate for struct_ops maps
libbpf: Replace elf_state->st_ops_* fields with SEC_ST_OPS sec_type
libbpf: Struct_ops in SEC("?.struct_ops") / SEC("?.struct_ops.link")
libbpf: Rewrite btf datasec names starting from '?'
Kees Cook (1):
bpf: Replace bpf_lpm_trie_key 0-length array with flexible array
Kui-Feng Lee (2):
libbpf: Set btf_value_type_id of struct bpf_map for struct_ops.
libbpf: Convert st_ops->data to shadow type.
include/uapi/linux/bpf.h | 24 +++-
include/uapi/linux/if_link.h | 1 +
src/btf.c | 2 +-
src/features.c | 22 +++
src/libbpf.c | 252 +++++++++++++++++++++++++++--------
src/libbpf_internal.h | 2 +
6 files changed, 242 insertions(+), 61 deletions(-)
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2024-03-06 15:22:13 -08:00
Kui-Feng Lee
ff95bd6238
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 92a871ab9fa59a74d013bc04f321026a057618e7
Checkpoint bpf-next commit: 2ab256e93249f5ac1da665861aa0f03fb4208d9c
Baseline bpf commit: 577e4432f3ac810049cb7e6b71f4d96ec7c6e894
Checkpoint bpf commit: dced881ead78e4d6add3735d02a9186ba2415630
Arnaldo Carvalho de Melo (1):
tools headers UAPI: Sync linux/fcntl.h with the kernel sources
Cupertino Miranda (1):
libbpf: Add support to GCC in CORE macro definitions
Martin Kelly (1):
bpf: Clarify batch lookup/lookup_and_delete semantics
Matt Bobrowski (1):
libbpf: Make remark about zero-initializing bpf_*_info structs
include/uapi/linux/bpf.h | 6 ++++-
include/uapi/linux/fcntl.h | 3 +++
src/bpf.h | 39 ++++++++++++++++++++++++---------
src/bpf_core_read.h | 45 ++++++++++++++++++++++++++++++++------
4 files changed, 75 insertions(+), 18 deletions(-)
Signed-off-by: Kui-Feng Lee <thinker.li@gmail.com >
2024-02-27 10:14:31 -08:00
Andrii Nakryiko
8a8feae5f4
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 943b043aeecce9accb6d367af47791c633e95e4d
Checkpoint bpf-next commit: 92a871ab9fa59a74d013bc04f321026a057618e7
Baseline bpf commit: 577e4432f3ac810049cb7e6b71f4d96ec7c6e894
Checkpoint bpf commit: 577e4432f3ac810049cb7e6b71f4d96ec7c6e894
Andrii Nakryiko (1):
libbpf: fix return value for PERF_EVENT __arg_ctx type fix up check
Toke Høiland-Jørgensen (1):
libbpf: Use OPTS_SET() macro in bpf_xdp_query()
src/libbpf.c | 6 +++---
src/netlink.c | 4 ++--
2 files changed, 5 insertions(+), 5 deletions(-)
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2024-02-06 11:52:00 -08:00
Andrii Nakryiko
f11758a780
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: ced33f2cfa21a14a292a00e31dc9f85c1bfbda1c
Checkpoint bpf-next commit: 943b043aeecce9accb6d367af47791c633e95e4d
Baseline bpf commit: 577e4432f3ac810049cb7e6b71f4d96ec7c6e894
Checkpoint bpf commit: 577e4432f3ac810049cb7e6b71f4d96ec7c6e894
Andrii Nakryiko (8):
libbpf: integrate __arg_ctx feature detector into kernel_supports()
libbpf: fix __arg_ctx type enforcement for perf_event programs
libbpf: add __arg_trusted and __arg_nullable tag macros
libbpf: add bpf_core_cast() macro
libbpf: Call memfd_create() syscall directly
libbpf: Add missing LIBBPF_API annotation to libbpf_set_memlock_rlim
API
libbpf: Add btf__new_split() API that was declared but not implemented
libbpf: Add missed btf_ext__raw_data() API
Eduard Zingerman (1):
libbpf: Remove unnecessary null check in kernel_supports()
Ian Rogers (1):
libbpf: Add some details for BTF parsing failures
src/bpf.h | 2 +-
src/bpf_core_read.h | 13 ++++++
src/bpf_helpers.h | 2 +
src/btf.c | 33 ++++++++++++---
src/features.c | 58 +++++++++++++++++++++++++
src/libbpf.c | 99 ++++++++++++++-----------------------------
src/libbpf.map | 5 ++-
src/libbpf_internal.h | 2 +
src/linker.c | 2 +-
9 files changed, 140 insertions(+), 76 deletions(-)
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2024-02-01 15:10:17 -08:00
Andrii Nakryiko
5139f12ef1
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: c8632acf193beac64bbdaebef013368c480bf74f
Checkpoint bpf-next commit: ced33f2cfa21a14a292a00e31dc9f85c1bfbda1c
Baseline bpf commit: 0a5bd0ffe790511d802e7f40898429a89e2487df
Checkpoint bpf commit: 577e4432f3ac810049cb7e6b71f4d96ec7c6e894
Andrii Nakryiko (1):
libbpf: Fix faccessat() usage on Android
src/libbpf_internal.h | 14 ++++++++++++++
1 file changed, 14 insertions(+)
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2024-01-29 10:48:12 -08:00
Andrii Nakryiko
2f81310ec0
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 98e20e5e13d2811898921f999288be7151a11954
Checkpoint bpf-next commit: c8632acf193beac64bbdaebef013368c480bf74f
Baseline bpf commit: 7c5e046bdcb2513f9decb3765d8bf92d604279cf
Checkpoint bpf commit: 0a5bd0ffe790511d802e7f40898429a89e2487df
Andrey Grafin (1):
libbpf: Apply map_set_def_max_entries() for inner_maps on creation
Andrii Nakryiko (17):
libbpf: feature-detect arg:ctx tag support in kernel
libbpf: warn on unexpected __arg_ctx type when rewriting BTF
libbpf: call dup2() syscall directly
bpf: Introduce BPF token object
bpf: Add BPF token support to BPF_MAP_CREATE command
bpf: Add BPF token support to BPF_BTF_LOAD command
bpf: Add BPF token support to BPF_PROG_LOAD command
libbpf: Add bpf_token_create() API
libbpf: Add BPF token support to bpf_map_create() API
libbpf: Add BPF token support to bpf_btf_load() API
libbpf: Add BPF token support to bpf_prog_load() API
libbpf: Split feature detectors definitions from cached results
libbpf: Further decouple feature checking logic from bpf_object
libbpf: Move feature detection code into its own file
libbpf: Wire up token_fd into feature probing logic
libbpf: Wire up BPF token support at BPF object level
libbpf: Support BPF token path setting through LIBBPF_BPF_TOKEN_PATH
envvar
Daniel Borkmann (1):
bpf: Sync uapi bpf.h header for the tooling infra
Dima Tisnek (1):
libbpf: Correct bpf_core_read.h comment wrt bpf_core_relo struct
Jiri Olsa (2):
bpf: Add cookie to perf_event bpf_link_info records
bpf: Store cookies in kprobe_multi bpf_link_info data
Kan Liang (2):
perf: Add branch stack counters
perf/x86/intel: Support branch counters logging
Kui-Feng Lee (3):
bpf: pass btf object id in bpf_map_info.
bpf: pass attached BTF to the bpf_struct_ops subsystem
libbpf: Find correct module BTFs for struct_ops maps and progs.
Martin KaFai Lau (1):
libbpf: Ensure undefined bpf_attr field stays 0
include/uapi/linux/bpf.h | 79 +++-
include/uapi/linux/perf_event.h | 13 +
src/bpf.c | 42 +-
src/bpf.h | 38 +-
src/bpf_core_read.h | 2 +-
src/btf.c | 10 +-
src/elf.c | 2 -
src/features.c | 503 +++++++++++++++++++++
src/libbpf.c | 744 ++++++++++++--------------------
src/libbpf.h | 21 +-
src/libbpf.map | 1 +
src/libbpf_internal.h | 50 ++-
src/libbpf_probes.c | 12 +-
src/str_error.h | 3 +
14 files changed, 1019 insertions(+), 501 deletions(-)
create mode 100644 src/features.c
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2024-01-26 18:12:29 -05:00
Andrii Nakryiko
e2203b3057
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 750011e239a50873251c16207b0fe78eabf8577e
Checkpoint bpf-next commit: 98e20e5e13d2811898921f999288be7151a11954
Baseline bpf commit: bc4fbf022c68967cb49b2b820b465cf90de974b8
Checkpoint bpf commit: 7c5e046bdcb2513f9decb3765d8bf92d604279cf
Alyssa Ross (1):
libbpf: Skip DWARF sections in linker sanity check
Amritha Nambiar (4):
netdev-genl: spec: Extend netdev netlink spec in YAML for queue
netdev-genl: spec: Extend netdev netlink spec in YAML for NAPI
netdev-genl: spec: Add irq in netdev netlink YAML spec
netdev-genl: spec: Add PID in netdev netlink YAML spec
Andrii Nakryiko (24):
bpf: introduce BPF token object
bpf: add BPF token support to BPF_MAP_CREATE command
bpf: add BPF token support to BPF_BTF_LOAD command
bpf: add BPF token support to BPF_PROG_LOAD command
libbpf: add bpf_token_create() API
libbpf: add BPF token support to bpf_map_create() API
libbpf: add BPF token support to bpf_btf_load() API
libbpf: add BPF token support to bpf_prog_load() API
bpf: rename MAX_BPF_LINK_TYPE into __MAX_BPF_LINK_TYPE for consistency
libbpf: split feature detectors definitions from cached results
libbpf: further decouple feature checking logic from bpf_object
libbpf: move feature detection code into its own file
libbpf: wire up token_fd into feature probing logic
libbpf: wire up BPF token support at BPF object level
libbpf: support BPF token path setting through LIBBPF_BPF_TOKEN_PATH
envvar
Revert BPF token-related functionality
libbpf: add __arg_xxx macros for annotating global func args
libbpf: make uniform use of btf__fd() accessor inside libbpf
libbpf: use explicit map reuse flag to skip map creation steps
libbpf: don't rely on map->fd as an indicator of map being created
libbpf: use stable map placeholder FDs
libbpf: move exception callbacks assignment logic into relocation step
libbpf: move BTF loading step after relocation step
libbpf: implement __arg_ctx fallback logic
Daniel Xu (1):
libbpf: Add BPF_CORE_WRITE_BITFIELD() macro
David Vernet (1):
bpf: Load vmlinux btf for any struct_ops map
Eduard Zingerman (1):
libbpf: Start v1.4 development cycle
Jakub Kicinski (1):
tools: ynl: add sample for getting page-pool information
Jamal Hadi Salim (5):
net/sched: Remove uapi support for rsvp classifier
net/sched: Remove uapi support for tcindex classifier
net/sched: Remove uapi support for dsmark qdisc
net/sched: Remove uapi support for ATM qdisc
net/sched: Remove uapi support for CBQ qdisc
Jiri Olsa (2):
libbpf: Add st_type argument to elf_resolve_syms_offsets function
bpf: Add link_info support for uprobe multi link
Larysa Zaremba (1):
xdp: Add VLAN tag hint
Mingyi Zhang (1):
libbpf: Fix NULL pointer dereference in bpf_object__collect_prog_relos
Sergei Trofimovich (1):
libbpf: Add pr_warn() for EINVAL cases in linker_sanity_check_elf
Stanislav Fomichev (3):
xsk: Support tx_metadata_len
xsk: Add TX timestamp and TX checksum offload support
xsk: Add option to calculate TX checksum in SW
include/uapi/linux/bpf.h | 14 +-
include/uapi/linux/if_xdp.h | 61 +++-
include/uapi/linux/netdev.h | 81 ++++-
include/uapi/linux/pkt_cls.h | 47 ---
include/uapi/linux/pkt_sched.h | 109 ------
src/bpf_core_read.h | 32 ++
src/bpf_helpers.h | 3 +
src/elf.c | 5 +-
src/libbpf.c | 585 +++++++++++++++++++++++++--------
src/libbpf.map | 3 +
src/libbpf_internal.h | 17 +-
src/libbpf_version.h | 2 +-
src/linker.c | 27 +-
13 files changed, 673 insertions(+), 313 deletions(-)
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2024-01-04 19:15:17 -05:00
Andrii Nakryiko
20c0a9e3d7
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 155addf0814a92d08fce26a11b27e3315cdba977
Checkpoint bpf-next commit: 750011e239a50873251c16207b0fe78eabf8577e
Baseline bpf commit: 83b9dda8afa4e968d9cce253f390b01c0612a2a5
Checkpoint bpf commit: bc4fbf022c68967cb49b2b820b465cf90de974b8
Andrii Nakryiko (2):
bpf: add register bounds sanity checks and sanitization
bpf: rename BPF_F_TEST_SANITY_STRICT to BPF_F_TEST_REG_INVARIANTS
Jordan Rome (1):
bpf: Add crosstask check to __bpf_get_stack
include/uapi/linux/bpf.h | 6 ++++++
1 file changed, 6 insertions(+)
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2023-11-22 16:20:56 -05:00
Eduard Zingerman
fa0e866373
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 0e133a13370389d3894891eafe54fec2c44ad735
Checkpoint bpf-next commit: e80742d917492f10926b46b0caca050c6c9231d6
Baseline bpf commit: 8f8abb863fa5a4cc18955c6a0e17af0ded3e4a76
Checkpoint bpf commit: 83b9dda8afa4e968d9cce253f390b01c0612a2a5
Daniel Borkmann (3):
netkit, bpf: Add bpf programmable net device
tools: Sync if_link uapi header
libbpf: Add link-based API for netkit
Yonghong Song (2):
libbpf: Fix potential uninitialized tail padding with
LIBBPF_OPTS_RESET
bpf: Use named fields for certain bpf uapi structs
include/uapi/linux/bpf.h | 37 +++++----
include/uapi/linux/if_link.h | 141 +++++++++++++++++++++++++++++++++++
src/bpf.c | 16 ++++
src/bpf.h | 5 ++
src/libbpf.c | 39 ++++++++++
src/libbpf.h | 15 ++++
src/libbpf.map | 1 +
src/libbpf_common.h | 13 ++--
8 files changed, 246 insertions(+), 21 deletions(-)
Signed-off-by: Eduard Zingerman <eddyz87@gmail.com >
2023-11-13 18:21:02 -08:00
Yonghong Song
6a5776066c
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 2147c8d07e1abc8dfc3433ca18eed5295e230ede
Checkpoint bpf-next commit: 0e133a13370389d3894891eafe54fec2c44ad735
Baseline bpf commit: 9ff8d2717fc8f63e5cb226ddbda20649eefa2728
Checkpoint bpf commit: 9ff8d2717fc8f63e5cb226ddbda20649eefa2728
Alexandre Ghiti (1):
libbpf: Fix syscall access arguments on riscv
Andrii Nakryiko (1):
libbpf: Don't assume SHT_GNU_verdef presence for SHT_GNU_versym
section
Daan De Meyer (3):
bpf: Implement cgroup sockaddr hooks for unix sockets
libbpf: Add support for cgroup unix socket address hooks
documentation/bpf: Document cgroup unix socket address hooks
David Vernet (1):
bpf: Add ability to pin bpf timer to calling CPU
Martynas Pumputis (1):
bpf: Derive source IP addr via bpf_*_fib_lookup()
docs/program_types.rst | 10 ++++++++++
include/uapi/linux/bpf.h | 27 +++++++++++++++++++++++----
src/bpf_tracing.h | 2 --
src/elf.c | 16 ++++++++++------
src/libbpf.c | 10 ++++++++++
5 files changed, 53 insertions(+), 12 deletions(-)
Signed-off-by: Yonghong Song <yonghong.song@linux.dev >
2023-10-26 09:00:01 -07:00
Song Liu
e26b84dc33
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 45ee73a0722b9e1d0b7a524d06756291b13b5912
Checkpoint bpf-next commit: 2147c8d07e1abc8dfc3433ca18eed5295e230ede
Baseline bpf commit: 57eb5e1c5c57972c95e8efab6bc81b87161b0b07
Checkpoint bpf commit: 4cb893e89221be9c791e43cab6a8e937cd57e17f
Hengqi Chen (3):
libbpf: Resolve symbol conflicts at the same offset for uprobe
libbpf: Support symbol versioning for uprobe
libbpf: Allow Golang symbols in uprobe secdef
Jiri Olsa (2):
bpf: Add missed value to kprobe_multi link info
bpf: Add missed value to kprobe perf link info
Kumar Kartikeya Dwivedi (2):
libbpf: Refactor bpf_object__reloc_code
libbpf: Add support for custom exception callbacks
Martin Kelly (8):
libbpf: Refactor cleanup in ring_buffer__add
libbpf: Switch rings to array of pointers
libbpf: Add ring_buffer__ring
libbpf: Add ring__producer_pos, ring__consumer_pos
libbpf: Add ring__avail_data_size
libbpf: Add ring__size
libbpf: Add ring__map_fd
libbpf: Add ring__consume
include/uapi/linux/bpf.h | 2 +
src/elf.c | 139 ++++++++++++++++++++++++++---
src/libbpf.c | 188 ++++++++++++++++++++++++++++++++-------
src/libbpf.h | 73 +++++++++++++++
src/libbpf.map | 7 ++
src/ringbuf.c | 85 +++++++++++++++---
6 files changed, 439 insertions(+), 55 deletions(-)
Signed-off-by: Song Liu <song@kernel.org >
2023-10-02 11:17:48 -07:00
Andrii Nakryiko
10da3d2384
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 9e3b47abeb8f76c39c570ffc924ac0b35f132274
Checkpoint bpf-next commit: 45ee73a0722b9e1d0b7a524d06756291b13b5912
Baseline bpf commit: 23d775f12dcd23d052a4927195f15e970e27ab26
Checkpoint bpf commit: 57eb5e1c5c57972c95e8efab6bc81b87161b0b07
Andrii Nakryiko (1):
libbpf: Add basic BTF sanity validation
Ravi Bangoria (1):
perf/mem: Introduce PERF_MEM_LVLNUM_UNC
Stanislav Fomichev (2):
bpf: expose information about supported xdp metadata kfunc
bpf: Clarify error expectations from bpf_clone_redirect
Yonghong Song (2):
libbpf: Add __percpu_kptr macro definition
bpf: Mark BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE deprecated
include/uapi/linux/bpf.h | 13 ++-
include/uapi/linux/netdev.h | 16 ++++
include/uapi/linux/perf_event.h | 3 +-
src/bpf_helpers.h | 1 +
src/btf.c | 160 ++++++++++++++++++++++++++++++++
5 files changed, 190 insertions(+), 3 deletions(-)
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2023-09-15 15:57:14 -07:00
Andrii Nakryiko
2e6b54e5ea
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 0a55264cf966fb95ebf9d03d9f81fa992f069312
Checkpoint bpf-next commit: 9e3b47abeb8f76c39c570ffc924ac0b35f132274
Baseline bpf commit: 23d775f12dcd23d052a4927195f15e970e27ab26
Checkpoint bpf commit: 23d775f12dcd23d052a4927195f15e970e27ab26
Andrii Nakryiko (1):
libbpf: fix signedness determination in CO-RE relo handling logic
Daniel Xu (1):
libbpf: Add bpf_object__unpin()
Hao Luo (1):
libbpf: Free btf_vmlinux when closing bpf_object
Jiri Olsa (15):
bpf: Switch BPF_F_KPROBE_MULTI_RETURN macro to enum
bpf: Add multi uprobe link
bpf: Add cookies support for uprobe_multi link
bpf: Add pid filter support for uprobe_multi link
libbpf: Add uprobe_multi attach type and link names
libbpf: Move elf_find_func_offset* functions to elf object
libbpf: Add elf_open/elf_close functions
libbpf: Add elf symbol iterator
libbpf: Add elf_resolve_syms_offsets function
libbpf: Add elf_resolve_pattern_offsets function
libbpf: Add bpf_link_create support for multi uprobes
libbpf: Add bpf_program__attach_uprobe_multi function
libbpf: Add support for u[ret]probe.multi[.s] program sections
libbpf: Add uprobe multi link detection
libbpf: Add uprobe multi link support to bpf_program__attach_usdt
include/uapi/linux/bpf.h | 22 +-
src/bpf.c | 11 +
src/bpf.h | 11 +-
src/elf.c | 440 +++++++++++++++++++++++++++++++++++++++
src/libbpf.c | 404 ++++++++++++++++++-----------------
src/libbpf.h | 52 +++++
src/libbpf.map | 2 +
src/libbpf_internal.h | 21 ++
src/relo_core.c | 2 +-
src/usdt.c | 116 +++++++----
10 files changed, 853 insertions(+), 228 deletions(-)
create mode 100644 src/elf.c
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2023-08-25 11:51:28 -07:00
Andrii Nakryiko
383198dc49
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: a3e7e6b17946f48badce98d7ac360678a0ea7393
Checkpoint bpf-next commit: 0a55264cf966fb95ebf9d03d9f81fa992f069312
Baseline bpf commit: 496720b7cfb6574a8f6f4d434f23e3d1e6cfaeb9
Checkpoint bpf commit: 23d775f12dcd23d052a4927195f15e970e27ab26
Alan Maguire (1):
bpf: sync tools/ uapi header with
Arnaldo Carvalho de Melo (1):
tools headers uapi: Sync linux/fcntl.h with the kernel sources
Daniel Borkmann (5):
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
Daniel Xu (1):
netfilter: bpf: Support BPF_F_NETFILTER_IP_DEFRAG in netfilter link
Dave Marchevsky (1):
libbpf: Support triple-underscore flavors for kfunc relocation
Jiri Olsa (1):
bpf: Add support for bpf_get_func_ip helper for uprobe program
Lorenz Bauer (1):
bpf, net: Support SO_REUSEPORT sockets with bpf_sk_assign
Maciej Fijalkowski (1):
xsk: add new netlink attribute dedicated for ZC max frags
Magnus Karlsson (2):
selftests/xsk: transmit and receive multi-buffer packets
selftests/xsk: add basic multi-buffer test
Marco Vedovati (1):
libbpf: Set close-on-exec flag on gzopen
Sergey Kacheev (1):
libbpf: Use local includes inside the library
Stanislav Fomichev (1):
ynl: regenerate all headers
Yafang Shao (2):
bpf: Support ->fill_link_info for kprobe_multi
bpf: Support ->fill_link_info for perf_event
Yonghong Song (1):
bpf: Support new sign-extension load insns
include/uapi/linux/bpf.h | 128 +++++++++++++++++++++++++++++++-----
include/uapi/linux/fcntl.h | 5 ++
include/uapi/linux/if_xdp.h | 9 +++
include/uapi/linux/netdev.h | 4 +-
src/bpf.c | 127 ++++++++++++++++++++++++-----------
src/bpf.h | 97 +++++++++++++++++++++++----
src/bpf_tracing.h | 2 +-
src/libbpf.c | 94 +++++++++++++++++++++-----
src/libbpf.h | 18 ++++-
src/libbpf.map | 2 +
src/libbpf_common.h | 16 +++++
src/netlink.c | 5 ++
src/usdt.bpf.h | 4 +-
13 files changed, 423 insertions(+), 88 deletions(-)
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2023-08-21 13:27:45 -07:00
Andrii Nakryiko
05f94ddbb8
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: c628747cc8800cf6d33d09f7f42c8b6f91e64dc7
Checkpoint bpf-next commit: a3e7e6b17946f48badce98d7ac360678a0ea7393
Baseline bpf commit: 496720b7cfb6574a8f6f4d434f23e3d1e6cfaeb9
Checkpoint bpf commit: 496720b7cfb6574a8f6f4d434f23e3d1e6cfaeb9
Andrii Nakryiko (1):
libbpf: Fix realloc API handling in zero-sized edge cases
John Sanpe (1):
libbpf: Remove HASHMAP_INIT static initialization helper
src/hashmap.h | 10 ----------
src/libbpf.c | 15 ++++++++++++---
src/usdt.c | 5 ++++-
3 files changed, 16 insertions(+), 14 deletions(-)
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2023-07-11 10:03:25 -07:00
Andrii Nakryiko
6c020e6c47
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 856fe03d929205b4c8c8fa51296342cd85592e3f
Checkpoint bpf-next commit: c628747cc8800cf6d33d09f7f42c8b6f91e64dc7
Baseline bpf commit: 496720b7cfb6574a8f6f4d434f23e3d1e6cfaeb9
Checkpoint bpf commit: 496720b7cfb6574a8f6f4d434f23e3d1e6cfaeb9
Andrii Nakryiko (1):
libbpf: only reset sec_def handler when necessary
src/libbpf.c | 27 +++++++++++++++++++--------
1 file changed, 19 insertions(+), 8 deletions(-)
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2023-07-10 14:24:42 -07:00
Andrii Nakryiko
ea27ebcffd
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 25085b4e9251c77758964a8e8651338972353642
Checkpoint bpf-next commit: 856fe03d929205b4c8c8fa51296342cd85592e3f
Baseline bpf commit: ad96f1c9138e0897bee7f7c5e54b3e24f8b62f57
Checkpoint bpf commit: 496720b7cfb6574a8f6f4d434f23e3d1e6cfaeb9
Andrea Terzolo (1):
libbpf: Skip modules BTF loading when CAP_SYS_ADMIN is missing
Florian Westphal (1):
libbpf: Add netfilter link attach helper
Jackie Liu (2):
libbpf: Cross-join available_filter_functions and kallsyms for
multi-kprobes
libbpf: Use available_filter_functions_addrs with multi-kprobes
src/bpf.c | 8 ++
src/bpf.h | 6 ++
src/libbpf.c | 216 ++++++++++++++++++++++++++++++++++++++++++++++---
src/libbpf.h | 15 ++++
src/libbpf.map | 1 +
5 files changed, 233 insertions(+), 13 deletions(-)
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2023-07-07 18:55:44 -07:00
Manu Bretelle
3c7fcfe0ce
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: fcf1fa29c8ea75bf104c35ce29b65ce2ba6a6a9d
Checkpoint bpf-next commit: 25085b4e9251c77758964a8e8651338972353642
Baseline bpf commit: f726e03564ef4e754dd93beb54303e2e1671049e
Checkpoint bpf commit: ad96f1c9138e0897bee7f7c5e54b3e24f8b62f57
Andrii Nakryiko (2):
libbpf: Ensure libbpf always opens files with O_CLOEXEC
libbpf: Ensure FD >= 3 during bpf_map__reuse_fd()
Florian Westphal (1):
bpf: netfilter: Add BPF_NETFILTER bpf_attach_type
JP Kobryn (1):
libbpf: Change var type in datasec resize func
Louis DeLosSantos (1):
bpf: Add table ID to bpf_fib_lookup BPF helper
include/uapi/linux/bpf.h | 22 +++++++++++++++++++---
src/btf.c | 2 +-
src/libbpf.c | 26 +++++++++++++-------------
src/libbpf_probes.c | 4 +++-
src/usdt.c | 5 ++---
5 files changed, 38 insertions(+), 21 deletions(-)
Signed-off-by: Manu Bretelle <chantr4@gmail.com >
2023-06-17 00:07:28 +00:00
Daniel Müller
9aea1da2bb
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 2ddade322925641ee2a75f13665c51f2e74d7791
Checkpoint bpf-next commit: fcf1fa29c8ea75bf104c35ce29b65ce2ba6a6a9d
Baseline bpf commit: 71b547f561247897a0a14f3082730156c0533fed
Checkpoint bpf commit: f726e03564ef4e754dd93beb54303e2e1671049e
Alexey Dobriyan (1):
ELF: fix all "Elf" typos
Andrii Nakryiko (4):
libbpf: fix offsetof() and container_of() to work with CO-RE
libbpf: Start v1.3 development cycle
bpf: Support O_PATH FDs in BPF_OBJ_PIN and BPF_OBJ_GET commands
libbpf: Add opts-based bpf_obj_pin() API and add support for path_fd
Florian Westphal (1):
tools: bpftool: print netfilter link info
JP Kobryn (1):
libbpf: Add capability for resizing datasec maps
Jiri Olsa (1):
libbpf: Store zero fd to fd_array for loader kfunc relocation
Kenjiro Nakayama (1):
libbpf: Fix comment about arc and riscv arch in bpf_tracing.h
Martin KaFai Lau (1):
libbpf: btf_dump_type_data_check_overflow needs to consider
BTF_MEMBER_BITFIELD_SIZE
include/uapi/linux/bpf.h | 24 +++++++
src/bpf.c | 17 ++++-
src/bpf.h | 18 ++++-
src/bpf_helpers.h | 15 +++--
src/bpf_tracing.h | 3 +-
src/btf_dump.c | 22 +++++-
src/gen_loader.c | 14 ++--
src/libbpf.c | 140 ++++++++++++++++++++++++++++++++++++---
src/libbpf.h | 18 ++++-
src/libbpf.map | 5 ++
src/libbpf_probes.c | 1 +
src/libbpf_version.h | 2 +-
src/usdt.c | 2 +-
13 files changed, 246 insertions(+), 35 deletions(-)
Signed-off-by: Daniel Müller <deso@posteo.net >
2023-05-25 16:44:19 -07:00
Song Liu
f0e39b4946
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 4ca13d1002f37c10038ff4ed3cfdc70dbe049d60
Checkpoint bpf-next commit: 2ddade322925641ee2a75f13665c51f2e74d7791
Baseline bpf commit: a6f6a95f25803500079513780d11a911ce551d76
Checkpoint bpf commit: 71b547f561247897a0a14f3082730156c0533fed
Andrii Nakryiko (9):
libbpf: Don't enforce unnecessary verifier log restrictions on libbpf
side
bpf: Add log_true_size output field to return necessary log buffer
size
libbpf: Wire through log_true_size returned from kernel for
BPF_PROG_LOAD
libbpf: Wire through log_true_size for bpf_btf_load() API
libbpf: misc internal libbpf clean ups around log fixup
libbpf: report vmlinux vs module name when dealing with ksyms
libbpf: improve handling of unresolved kfuncs
libbpf: move bpf_for(), bpf_for_each(), and bpf_repeat() into
bpf_helpers.h
libbpf: mark bpf_iter_num_{new,next,destroy} as __weak
Arnaldo Carvalho de Melo (1):
tools include UAPI: Synchronize linux/fcntl.h with the kernel sources
Dave Marchevsky (1):
bpf: Introduce opaque bpf_refcount struct and add btf_record plumbing
Herbert Xu (1):
macvlan: Add netlink attribute for broadcast cutoff
Lorenzo Bianconi (1):
xdp: add xdp_set_features_flag utility routine
include/uapi/linux/bpf.h | 16 +++++-
include/uapi/linux/fcntl.h | 1 +
include/uapi/linux/if_link.h | 1 +
include/uapi/linux/netdev.h | 2 +
src/bpf.c | 17 +++---
src/bpf.h | 22 +++++--
src/bpf_helpers.h | 103 +++++++++++++++++++++++++++++++++
src/libbpf.c | 107 ++++++++++++++++++++++++++++-------
8 files changed, 237 insertions(+), 32 deletions(-)
Signed-off-by: Song Liu <song@kernel.org >
2023-04-19 16:15:07 -07:00
Daniel Müller
3783577161
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 226bc6ae6405c46a6e9865835c36a1d45fc0b3bf
Checkpoint bpf-next commit: 4ca13d1002f37c10038ff4ed3cfdc70dbe049d60
Baseline bpf commit: 915efd8a446b74442039d31689d5d863caf82517
Checkpoint bpf commit: a6f6a95f25803500079513780d11a911ce551d76
Andrii Nakryiko (1):
libbpf: disassociate section handler on explicit
bpf_program__set_type() call
Arnaldo Carvalho de Melo (1):
tools include UAPI: Synchronize linux/fcntl.h with the kernel sources
Eduard Zingerman (1):
libbpf: Fix double-free when linker processes empty sections
JP Kobryn (1):
libbpf: Ensure print callback usage is thread-safe
Jakub Kicinski (1):
ynl: broaden the license even more
Lorenzo Bianconi (1):
xdp: add xdp_set_features_flag utility routine
include/uapi/linux/fcntl.h | 1 +
include/uapi/linux/netdev.h | 4 +++-
src/libbpf.c | 10 +++++++---
src/libbpf.h | 2 ++
src/linker.c | 14 +++++++++++++-
5 files changed, 26 insertions(+), 5 deletions(-)
Signed-off-by: Daniel Müller <deso@posteo.net >
2023-03-30 16:24:24 -07:00
Andrii Nakryiko
dc4e7076ad
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: b8a2e3f93d412114a1539ea97b59b3e6ed6e1f9a
Checkpoint bpf-next commit: 226bc6ae6405c46a6e9865835c36a1d45fc0b3bf
Baseline bpf commit: a33a6eaa19d3af261e8708bfc8ba62020703117f
Checkpoint bpf commit: 915efd8a446b74442039d31689d5d863caf82517
Alexei Starovoitov (5):
libbpf: Fix relocation of kfunc ksym in ld_imm64 insn.
libbpf: Introduce bpf_ksym_exists() macro.
libbpf: Fix ld_imm64 copy logic for ksym in light skeleton.
libbpf: Rename RELO_EXTERN_VAR/FUNC.
libbpf: Support kfunc detection in light skeleton.
Daniel Müller (1):
libbpf: Ignore warnings about "inefficient alignment"
Kui-Feng Lee (5):
bpf: Create links for BPF struct_ops maps.
libbpf: Create a bpf_link in bpf_map__attach_struct_ops().
bpf: Update the struct_ops of a bpf_link.
libbpf: Update a bpf_link with another struct_ops.
libbpf: Use .struct_ops.link section to indicate a struct_ops with a
link.
Liu Pan (1):
libbpf: Explicitly call write to append content to file
Sreevani Sreejith (1):
bpf, docs: Libbpf overview documentation
docs/index.rst | 25 +++--
docs/libbpf_overview.rst | 228 +++++++++++++++++++++++++++++++++++++
include/uapi/linux/bpf.h | 33 +++++-
src/bpf.c | 8 +-
src/bpf.h | 3 +-
src/bpf_gen_internal.h | 4 +-
src/bpf_helpers.h | 5 +
src/gen_loader.c | 48 ++++----
src/libbpf.c | 235 +++++++++++++++++++++++++++++----------
src/libbpf.h | 1 +
src/libbpf.map | 1 +
src/zip.c | 6 +
12 files changed, 501 insertions(+), 96 deletions(-)
create mode 100644 docs/libbpf_overview.rst
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2023-03-23 13:10:17 -07:00
David Vernet
7fdf16de6d
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: db55174d05ee6bed9d0583ba08e99c891ef0ed05
Checkpoint bpf-next commit: b8a2e3f93d412114a1539ea97b59b3e6ed6e1f9a
Baseline bpf commit: d900f3d20cc3169ce42ec72acc850e662a4d4db2
Checkpoint bpf commit: a33a6eaa19d3af261e8708bfc8ba62020703117f
Andrii Nakryiko (1):
bpf: implement numbers iterator
Daniel Müller (1):
libbpf: Fix theoretical u32 underflow in find_cd() function
Jakub Kicinski (1):
ynl: re-license uniformly under GPL-2.0 OR BSD-3-Clause
Jesus Sanchez-Palencia (1):
libbpf: Revert poisoning of strlcpy
Menglong Dong (1):
libbpf: Add support to set kprobe/uprobe attach mode
Michael Weiß (1):
bpf: Fix a typo for BPF_F_ANY_ALIGNMENT in bpf.h
Puranjay Mohan (2):
libbpf: Refactor parse_usdt_arg() to re-use code
libbpf: USDT arm arg parsing support
Ross Zwisler (1):
bpf: use canonical ftrace path
include/uapi/linux/bpf.h | 18 +++-
include/uapi/linux/netdev.h | 2 +-
src/libbpf.c | 48 ++++++++-
src/libbpf.h | 50 ++++++---
src/libbpf_internal.h | 4 +-
src/usdt.c | 196 ++++++++++++++++++++++--------------
src/zip.c | 3 +-
7 files changed, 219 insertions(+), 102 deletions(-)
Signed-off-by: David Vernet <void@manifault.com >
2023-03-15 13:18:34 -07:00
Daniel Müller
bfb1e97426
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: c8ee37bde4021a275d2e4f33bd48d54912bb00c4
Checkpoint bpf-next commit: db55174d05ee6bed9d0583ba08e99c891ef0ed05
Baseline bpf commit: 2d311f480b52eeb2e1fd432d64b78d82952c3808
Checkpoint bpf commit: d900f3d20cc3169ce42ec72acc850e662a4d4db2
Alexei Starovoitov (1):
bpf: Rename __kptr_ref -> __kptr and __kptr -> __kptr_untrusted.
Daniel Müller (3):
libbpf: Implement basic zip archive parsing support
libbpf: Introduce elf_find_func_offset_from_file() function
libbpf: Add support for attaching uprobes to shared objects in APKs
Joanne Koong (3):
bpf: Add skb dynptrs
bpf: Add xdp dynptrs
bpf: Add bpf_dynptr_slice and bpf_dynptr_slice_rdwr
Tero Kristo (1):
bpf: Add support for absolute value BPF timers
Viktor Malik (3):
libbpf: Remove unnecessary ternary operator
libbpf: Remove several dead assignments
libbpf: Cleanup linker_append_elf_relos
include/uapi/linux/bpf.h | 33 +++-
src/bpf_helpers.h | 2 +-
src/btf.c | 2 -
src/libbpf.c | 149 ++++++++++++++----
src/linker.c | 11 +-
src/relo_core.c | 3 -
src/zip.c | 328 +++++++++++++++++++++++++++++++++++++++
src/zip.h | 47 ++++++
8 files changed, 529 insertions(+), 46 deletions(-)
create mode 100644 src/zip.c
create mode 100644 src/zip.h
Signed-off-by: Daniel Müller <deso@posteo.net >
2023-03-06 09:47:37 -08:00
Yonghong Song
19cd9a1d4b
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 951bce29c8988209cc359e1fa35a4aaa35542fd5
Checkpoint bpf-next commit: c8ee37bde4021a275d2e4f33bd48d54912bb00c4
Baseline bpf commit: 3a70e0d4c9d74cb00f7c0ec022f5599f9f7ba07d
Checkpoint bpf commit: 2d311f480b52eeb2e1fd432d64b78d82952c3808
Ilya Leoshkevich (1):
libbpf: Document bpf_{btf,link,map,prog}_get_info_by_fd()
Puranjay Mohan (1):
libbpf: Fix arm syscall regs spec in bpf_tracing.h
Rob Herring (1):
perf: Add perf_event_attr::config3
Tariq Toukan (1):
netdev-genl: fix repeated typo oflloading -> offloading
Tiezhu Yang (1):
libbpf: Use struct user_pt_regs to define __PT_REGS_CAST() for
LoongArch
Yonghong Song (1):
libbpf: Fix bpf_xdp_query() in old kernels
include/uapi/linux/netdev.h | 2 +-
include/uapi/linux/perf_event.h | 3 ++
src/bpf.h | 69 ++++++++++++++++++++++++++++++---
src/bpf_tracing.h | 3 ++
src/netlink.c | 8 +++-
5 files changed, 78 insertions(+), 7 deletions(-)
Signed-off-by: Yonghong Song <yhs@fb.com >
2023-02-28 09:17:25 -08:00
Yonghong Song
7ef34fa945
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 6c20822fada1b8adb77fa450d03a0d449686a4a9
Checkpoint bpf-next commit: 951bce29c8988209cc359e1fa35a4aaa35542fd5
Baseline bpf commit: 6c20822fada1b8adb77fa450d03a0d449686a4a9
Checkpoint bpf commit: 3a70e0d4c9d74cb00f7c0ec022f5599f9f7ba07d
Ilya Leoshkevich (2):
libbpf: Introduce bpf_{btf,link,map,prog}_get_info_by_fd()
libbpf: Use bpf_{btf,link,map,prog}_get_info_by_fd()
Martin KaFai Lau (1):
bpf: Add BPF_FIB_LOOKUP_SKIP_NEIGH for bpf_fib_lookup
include/uapi/linux/bpf.h | 6 ++++++
src/bpf.c | 20 ++++++++++++++++++++
src/bpf.h | 9 +++++++++
src/btf.c | 8 ++++----
src/libbpf.c | 14 +++++++-------
src/libbpf.map | 5 +++++
src/netlink.c | 2 +-
src/ringbuf.c | 4 ++--
8 files changed, 54 insertions(+), 14 deletions(-)
Signed-off-by: Yonghong Song <yhs@fb.com >
2023-02-21 22:27:55 -08:00
Song Liu
4b492df97e
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: a5f6b9d577eba18601c14bba2dbff4a9b76af962
Checkpoint bpf-next commit: 6c20822fada1b8adb77fa450d03a0d449686a4a9
Baseline bpf commit: e8c8fd9b8393d7064152c8806f5ac446d760a23e
Checkpoint bpf commit: 6c20822fada1b8adb77fa450d03a0d449686a4a9
Dave Marchevsky (1):
bpf: Add basic bpf_rb_{root,node} support
Florian Lehner (1):
bpf: fix typo in header for bpf_perf_prog_read_value
Grant Seltzer (2):
libbpf: Fix malformed documentation formatting
libbpf: Add documentation to map pinning API functions
Hao Xiang (1):
libbpf: Correctly set the kernel code version in Debian kernel.
Ilya Leoshkevich (4):
libbpf: Simplify barrier_var()
libbpf: Fix unbounded memory access in bpf_usdt_arg()
libbpf: Fix BPF_PROBE_READ{_STR}_INTO() on s390x
libbpf: Fix alen calculation in libbpf_nla_dump_errormsg()
Jon Doron (1):
libbpf: Add sample_period to creation options
Lorenzo Bianconi (3):
libbpf: add the capability to specify netlink proto in
libbpf_netlink_send_recv
libbpf: add API to get XDP/XSK supported features
libbpf: Always use libbpf_err to return an error in bpf_xdp_query()
Randy Dunlap (1):
Documentation: bpf: correct spelling
Tiezhu Yang (1):
tools/bpf: Use tab instead of white spaces to sync bpf.h
docs/libbpf_naming_convention.rst | 6 +-
include/uapi/linux/bpf.h | 17 ++++-
src/bpf_core_read.h | 4 +-
src/bpf_helpers.h | 2 +-
src/libbpf.c | 46 ++----------
src/libbpf.h | 97 +++++++++++++++++++++---
src/libbpf_probes.c | 83 +++++++++++++++++++++
src/netlink.c | 118 +++++++++++++++++++++++++++---
src/nlattr.c | 2 +-
src/nlattr.h | 12 +++
src/usdt.bpf.h | 5 +-
11 files changed, 321 insertions(+), 71 deletions(-)
Signed-off-by: Song Liu <song@kernel.org >
2023-02-17 17:17:27 -08:00
Andrii Nakryiko
e398e7eaf4
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 7b43df6c6ec38c9097420902a1c8165c4b25bf70
Checkpoint bpf-next commit: a5f6b9d577eba18601c14bba2dbff4a9b76af962
Baseline bpf commit: 54c3f1a81421f85e60ae2eaae7be3727a09916ee
Checkpoint bpf commit: e8c8fd9b8393d7064152c8806f5ac446d760a23e
Alexei Starovoitov (1):
libbpf: Restore errno after pr_warn.
Andrii Nakryiko (24):
libbpf: start v1.2 development cycle
libbpf: Add support for fetching up to 8 arguments in kprobes
libbpf: Add 6th argument support for x86-64 in bpf_tracing.h
libbpf: Fix arm and arm64 specs in bpf_tracing.h
libbpf: Complete mips spec in bpf_tracing.h
libbpf: Complete powerpc spec in bpf_tracing.h
libbpf: Complete sparc spec in bpf_tracing.h
libbpf: Complete riscv arch spec in bpf_tracing.h
libbpf: Fix and complete ARC spec in bpf_tracing.h
libbpf: Complete LoongArch (loongarch) spec in bpf_tracing.h
libbpf: Add BPF_UPROBE and BPF_URETPROBE macro aliases
libbpf: Improve syscall tracing support in bpf_tracing.h
libbpf: Define x86-64 syscall regs spec in bpf_tracing.h
libbpf: Define i386 syscall regs spec in bpf_tracing.h
libbpf: Define s390x syscall regs spec in bpf_tracing.h
libbpf: Define arm syscall regs spec in bpf_tracing.h
libbpf: Define arm64 syscall regs spec in bpf_tracing.h
libbpf: Define mips syscall regs spec in bpf_tracing.h
libbpf: Define powerpc syscall regs spec in bpf_tracing.h
libbpf: Define sparc syscall regs spec in bpf_tracing.h
libbpf: Define riscv syscall regs spec in bpf_tracing.h
libbpf: Define arc syscall regs spec in bpf_tracing.h
libbpf: Define loongarch syscall regs spec in bpf_tracing.h
libbpf: Clean up now not needed __PT_PARM{1-6}_SYSCALL_REG defaults
Changbin Du (1):
libbpf: Return -ENODATA for missing btf section
Daniel T. Lee (1):
libbpf: Fix invalid return address register in s390
David Vernet (1):
libbpf: Support sleepable struct_ops.s section
Hengqi Chen (1):
libbpf: Add LoongArch support to bpf_tracing.h
Ludovic L'Hours (1):
libbpf: Fix map creation flags sanitization
Menglong Dong (1):
libbpf: Replace '.' with '_' in legacy kprobe event name
Rong Tao (1):
libbpf: Poison strlcpy()
Stanislav Fomichev (1):
bpf: Introduce device-bound XDP programs
Xin Liu (2):
libbpf: fix errno is overwritten after being closed.
libbpf: Added the description of some API functions
Ziyang Xuan (1):
bpf: Add ipip6 and ip6ip decap support for bpf_skb_adjust_room()
include/uapi/linux/bpf.h | 12 ++
src/bpf_tracing.h | 320 ++++++++++++++++++++++++++++++++++-----
src/btf.c | 2 +-
src/libbpf.c | 10 +-
src/libbpf.h | 29 +++-
src/libbpf.map | 3 +
src/libbpf_internal.h | 5 +-
src/libbpf_version.h | 2 +-
8 files changed, 341 insertions(+), 42 deletions(-)
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2023-01-25 20:44:09 -08:00
Andrii Nakryiko
6597330c45
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 0e43662e61f2569500ab83b8188c065603530785
Checkpoint bpf-next commit: 7b43df6c6ec38c9097420902a1c8165c4b25bf70
Baseline bpf commit: f506439ec3dee11e0e77b0a1f3fb3eec22c97873
Checkpoint bpf commit: 54c3f1a81421f85e60ae2eaae7be3727a09916ee
Changbin Du (1):
libbpf: Show error info about missing ".BTF" section
Christian Ehrig (1):
bpf: Add flag BPF_F_NO_TUNNEL_KEY to bpf_skb_set_tunnel_key()
Khem Raj (1):
libbpf: Fix build warning on ref_ctr_off for 32-bit architectures
include/uapi/linux/bpf.h | 4 ++++
src/btf.c | 1 +
src/libbpf.c | 2 +-
3 files changed, 6 insertions(+), 1 deletion(-)
--
2.30.2
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2022-12-20 22:23:18 -08:00
Andrii Nakryiko
75987cc295
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: b148c8b9b926e257a59c8eb2cd6fa3adfd443254
Checkpoint bpf-next commit: 0e43662e61f2569500ab83b8188c065603530785
Baseline bpf commit: 4121d4481b72501aa4d22680be4ea1096d69d133
Checkpoint bpf commit: f506439ec3dee11e0e77b0a1f3fb3eec22c97873
Andrii Nakryiko (1):
libbpf: Fix btf_dump's packed struct determination
src/btf_dump.c | 33 ++++++---------------------------
1 file changed, 6 insertions(+), 27 deletions(-)
--
2.30.2
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2022-12-15 14:34:52 -08:00
Andrii Nakryiko
30554b08fe
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 706819495921ddad6b3780140b9d9e9293b6dedc
Checkpoint bpf-next commit: b148c8b9b926e257a59c8eb2cd6fa3adfd443254
Baseline bpf commit: e931a173a685fe213127ae5aa6b7f2196c1d875d
Checkpoint bpf commit: 4121d4481b72501aa4d22680be4ea1096d69d133
Andrii Nakryiko (4):
libbpf: Fix single-line struct definition output in btf_dump
libbpf: Handle non-standardly sized enums better in BTF-to-C dumper
libbpf: Fix btf__align_of() by taking into account field offsets
libbpf: Fix BTF-to-C converter's padding logic
Eyal Birger (1):
tools: add IFLA_XFRM_COLLECT_METADATA to uapi/linux/if_link.h
Kumar Kartikeya Dwivedi (1):
bpf: Rework process_dynptr_func
Timo Hunziker (1):
libbpf: Parse usdt args without offset on x86 (e.g. 8@(%rsp))
Xin Liu (1):
libbpf: Optimized return value in libbpf_strerror when errno is libbpf
errno
include/uapi/linux/bpf.h | 8 +-
include/uapi/linux/if_link.h | 1 +
src/btf.c | 13 +++
src/btf_dump.c | 214 +++++++++++++++++++++++++++--------
src/libbpf_errno.c | 16 ++-
src/usdt.c | 8 ++
6 files changed, 204 insertions(+), 56 deletions(-)
--
2.30.2
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2022-12-14 22:09:00 -08:00
Andrii Nakryiko
be8f15bb93
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 5b1d640800de7fe02d68bf592d9d101de24c87f2
Checkpoint bpf-next commit: 706819495921ddad6b3780140b9d9e9293b6dedc
Baseline bpf commit: 47df8a2f78bc34ff170d147d05b121f84e252b85
Checkpoint bpf commit: e931a173a685fe213127ae5aa6b7f2196c1d875d
Alexei Starovoitov (1):
selftests/bpf: Workaround for llvm nop-4 bug
Andrii Nakryiko (2):
libbpf: Ignore hashmap__find() result explicitly in btf_dump
libbpf: Avoid enum forward-declarations in public API in C++ mode
Donald Hunter (1):
docs/bpf: Add table of BPF program types to libbpf docs
Hou Tao (4):
libbpf: Use page size as max_entries when probing ring buffer map
libbpf: Handle size overflow for ringbuf mmap
libbpf: Handle size overflow for user ringbuf mmap
libbpf: Check the validity of size in user_ring_buffer__reserve()
Ji Rongfeng (1):
bpf: Update bpf_{g,s}etsockopt() documentation
docs/index.rst | 3 +
docs/program_types.rst | 203 +++++++++++++++++++++++++++++++++++++++
include/uapi/linux/bpf.h | 23 +++--
src/bpf.h | 7 ++
src/btf_dump.c | 2 +-
src/libbpf.c | 3 +-
src/libbpf_probes.c | 2 +-
src/ringbuf.c | 26 +++--
8 files changed, 250 insertions(+), 19 deletions(-)
create mode 100644 docs/program_types.rst
--
2.30.2
Signed-off-by: Andrii Nakryiko <andrii@kernel.org >
2022-12-02 22:12:29 -08:00
Kui-Feng Lee
5322b8e76c
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: b548b17a93fd18357a5a6f535c10c1e68719ad32
Checkpoint bpf-next commit: 5b1d640800de7fe02d68bf592d9d101de24c87f2
Baseline bpf commit: 9cbd48d5fa14e4c65f8580de16686077f7cea02b
Checkpoint bpf commit: 47df8a2f78bc34ff170d147d05b121f84e252b85
David Michael (1):
libbpf: Fix uninitialized warning in btf_dump_dump_type_data
Jiri Olsa (1):
libbpf: Use correct return pointer in attach_raw_tp
Kang Minchul (3):
libbpf: checkpatch: Fixed code alignments in btf.c
libbpf: Fixed various checkpatch issues in libbpf.c
libbpf: checkpatch: Fixed code alignments in ringbuf.c
Kumar Kartikeya Dwivedi (1):
bpf: Support bpf_list_head in map values
include/uapi/linux/bpf.h | 10 +++++++++
src/btf.c | 5 +++--
src/btf_dump.c | 2 +-
src/libbpf.c | 47 +++++++++++++++++++++++++---------------
src/ringbuf.c | 4 ++--
5 files changed, 45 insertions(+), 23 deletions(-)
--
2.30.2
2022-11-18 13:53:39 -08:00
Andrii Nakryiko
4bdbb7ea28
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 62c69e89e81bfbdb9a87ae3e0599dcc6aacf786b
Checkpoint bpf-next commit: b548b17a93fd18357a5a6f535c10c1e68719ad32
Baseline bpf commit: e7b09357453a99e6f9e74c39e9ca1363c22c0b96
Checkpoint bpf commit: 9cbd48d5fa14e4c65f8580de16686077f7cea02b
Alan Maguire (1):
libbpf: Btf dedup identical struct test needs check for nested
structs/arrays
Andrii Nakryiko (2):
libbpf: clean up and refactor BTF fixup step
libbpf: only add BPF_F_MMAPABLE flag for data maps with global vars
Anshuman Khandual (4):
perf: Add system error and not in transaction branch types
perf: Extend branch type classification
perf: Capture branch privilege information
perf: Add PERF_BR_NEW_ARCH_[N] map for BRBE on arm64 platform
Eduard Zingerman (4):
libbpf: Resolve enum fwd as full enum64 and vice versa
libbpf: Hashmap interface update to allow both long and void*
keys/values
libbpf: Resolve unambigous forward declarations
libbpf: Hashmap.h update to fix build issues using LLVM14
Martin KaFai Lau (1):
bpf: Add hwtstamp field for the sockops prog
Namhyung Kim (1):
perf: Kill __PERF_SAMPLE_CALLCHAIN_EARLY
Ravi Bangoria (3):
perf/mem: Introduce PERF_MEM_LVLNUM_{EXTN_MEM|IO}
perf/uapi: Define PERF_MEM_SNOOPX_PEER in kernel header file
perf/mem: Rename PERF_MEM_LVLNUM_EXTN_MEM to PERF_MEM_LVLNUM_CXL
Sandipan Das (1):
perf/core: Add speculation info to branch entries
Xu Kuohai (1):
libbpf: Avoid allocating reg_name with sscanf in parse_usdt_arg()
Yonghong Song (2):
bpf: Implement cgroup storage available to non-cgroup-attached bpf
progs
libbpf: Support new cgroup local storage
include/uapi/linux/bpf.h | 51 +++++-
include/uapi/linux/perf_event.h | 57 ++++++-
src/btf.c | 267 ++++++++++++++++++++++----------
src/btf_dump.c | 15 +-
src/hashmap.c | 18 +--
src/hashmap.h | 91 +++++++----
src/libbpf.c | 196 ++++++++++++++---------
src/libbpf_probes.c | 1 +
src/strset.c | 18 +--
src/usdt.c | 44 +++---
10 files changed, 511 insertions(+), 247 deletions(-)
--
2.30.2
2022-11-12 18:24:12 -08:00
Andrii Nakryiko
534a2c6f53
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 87dbdc230d162bf9ee1ac77c8ade178b6b1e199e
Checkpoint bpf-next commit: 62c69e89e81bfbdb9a87ae3e0599dcc6aacf786b
Baseline bpf commit: 60240bc26114543fcbfcd8a28466e67e77b20388
Checkpoint bpf commit: e7b09357453a99e6f9e74c39e9ca1363c22c0b96
Andrii Nakryiko (1):
bpf: explicitly define BPF_FUNC_xxx integer values
Eduard Zingerman (1):
bpftool: Print newline before '}' for struct with padding only fields
Kui-Feng Lee (2):
bpf: Parameterize task iterators.
bpf: Handle bpf_link_info for the parameterized task BPF iterators.
Roberto Sassu (5):
libbpf: Fix LIBBPF_1.0.0 declaration in libbpf.map
libbpf: Introduce bpf_get_fd_by_id_opts and
bpf_map_get_fd_by_id_opts()
libbpf: Introduce bpf_prog_get_fd_by_id_opts()
libbpf: Introduce bpf_btf_get_fd_by_id_opts()
libbpf: Introduce bpf_link_get_fd_by_id_opts()
Shung-Hsi Yu (3):
libbpf: Use elf_getshdrnum() instead of e_shnum
libbpf: Deal with section with no data gracefully
libbpf: Fix null-pointer dereference in find_prog_by_sec_insn()
Xin Liu (1):
libbpf: Fix overrun in netlink attribute iteration
Xu Kuohai (2):
libbpf: Fix use-after-free in btf_dump_name_dups
libbpf: Fix memory leak in parse_usdt_arg()
include/uapi/linux/bpf.h | 442 ++++++++++++++++++++-------------------
src/bpf.c | 48 ++++-
src/bpf.h | 16 ++
src/btf_dump.c | 35 +++-
src/libbpf.c | 22 +-
src/libbpf.map | 6 +-
src/nlattr.c | 2 +-
src/usdt.c | 11 +-
8 files changed, 347 insertions(+), 235 deletions(-)
--
2.30.2
2022-10-17 13:13:02 -07:00
Andrii Nakryiko
ce321d6fd4
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: e34cfee65ec891a319ce79797dda18083af33a76
Checkpoint bpf-next commit: 87dbdc230d162bf9ee1ac77c8ade178b6b1e199e
Baseline bpf commit: 14b20b784f59bdd95f6f1cfb112c9818bcec4d84
Checkpoint bpf commit: 60240bc26114543fcbfcd8a28466e67e77b20388
Andrii Nakryiko (3):
libbpf: Fix crash if SEC("freplace") programs don't have
attach_prog_fd set
libbpf: restore memory layout of bpf_object_open_opts
libbpf: Don't require full struct enum64 in UAPI headers
Benjamin Tissoires (1):
libbpf: add map_get_fd_by_id and map_delete_elem in light skeleton
Daniel Borkmann (1):
libbpf: Remove gcc support for bpf_tail_call_static for now
David Vernet (3):
bpf: Define new BPF_MAP_TYPE_USER_RINGBUF map type
bpf: Add bpf_user_ringbuf_drain() helper
bpf: Add libbpf logic for user-space ring buffer
Hao Luo (2):
bpf: Introduce cgroup iter
bpf: Add CGROUP prefix to cgroup_iter_order
James Hilliard (1):
libbpf: Add GCC support for bpf_tail_call_static
Jiri Olsa (1):
bpf: Return value in kprobe get_func_ip only for entry address
Jon Doron (1):
libbpf: Fix the case of running as non-root with capabilities
Pu Lehui (1):
bpf, cgroup: Reject prog_attach_flags array when effective query
Quentin Monnet (1):
bpf: Fix a few typos in BPF helpers documentation
Shmulik Ladkani (2):
bpf, flow_dissector: Introduce BPF_FLOW_DISSECTOR_CONTINUE retcode for
bpf progs
bpf: Support getting tunnel flags
Stanislav Fomichev (1):
bpf: update bpf_{g,s}et_retval documentation
Tao Chen (1):
libbpf: Support raw BTF placed in the default search path
Wang Yufen (1):
libbpf: Add pathname_concat() helper
Xin Liu (2):
libbpf: Clean up legacy bpf maps declaration in bpf_helpers
libbpf: Fix NULL pointer exception in API btf_dump__dump_type_data
Yonghong Song (3):
bpf: Update descriptions for helpers bpf_get_func_arg[_cnt]()
libbpf: Add new BPF_PROG2 macro
libbpf: Improve BPF_PROG2 macro code quality and description
include/uapi/linux/bpf.h | 139 +++++++++++++++++---
src/bpf_helpers.h | 12 --
src/bpf_tracing.h | 107 ++++++++++++++++
src/btf.c | 32 ++---
src/btf.h | 25 +++-
src/btf_dump.c | 2 +-
src/libbpf.c | 106 ++++++++-------
src/libbpf.h | 111 +++++++++++++++-
src/libbpf.map | 10 ++
src/libbpf_probes.c | 1 +
src/libbpf_version.h | 2 +-
src/ringbuf.c | 271 +++++++++++++++++++++++++++++++++++++++
src/skel_internal.h | 23 ++++
src/usdt.c | 2 +-
14 files changed, 731 insertions(+), 112 deletions(-)
--
2.30.2
2022-09-27 15:23:45 -07:00
Andrii Nakryiko
aec0b1cd7d
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 73cf09a36bf7bfb3e5a3ff23755c36d49137c44d
Checkpoint bpf-next commit: e34cfee65ec891a319ce79797dda18083af33a76
Baseline bpf commit: e7c677bdd03d54e9a1bafcaf1faf5c573a506bba
Checkpoint bpf commit: 14b20b784f59bdd95f6f1cfb112c9818bcec4d84
Andrii Nakryiko (3):
libbpf: Fix potential NULL dereference when parsing ELF
libbpf: Streamline bpf_attr and perf_event_attr initialization
libbpf: Clean up deprecated and legacy aliases
Hangbin Liu (2):
libbpf: Add names for auxiliary maps
libbpf: Making bpf_prog_load() ignore name if kernel doesn't support
Hao Luo (1):
libbpf: Allows disabling auto attach
Quentin Monnet (1):
bpf: Clear up confusion in bpf_skb_adjust_room()'s documentation
include/uapi/linux/bpf.h | 6 +-
src/bpf.c | 186 ++++++++++++++++++++++-----------------
src/btf.c | 2 -
src/btf.h | 1 -
src/libbpf.c | 81 ++++++++++++-----
src/libbpf.h | 2 +
src/libbpf.map | 2 +
src/libbpf_internal.h | 3 +
src/libbpf_legacy.h | 2 +
src/netlink.c | 3 +-
src/skel_internal.h | 10 ++-
11 files changed, 183 insertions(+), 115 deletions(-)
--
2.30.2
2022-08-18 15:29:04 -07:00
Andrii Nakryiko
13a26d78f3
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 71930846b36f8e4e68267f8a3d47e33435c3657a
Checkpoint bpf-next commit: 73cf09a36bf7bfb3e5a3ff23755c36d49137c44d
Baseline bpf commit: f946964a9f79f8dcb5a6329265281eebfc23aee5
Checkpoint bpf commit: e7c677bdd03d54e9a1bafcaf1faf5c573a506bba
Alexei Starovoitov (1):
bpf: Disallow bpf programs call prog_run command.
Andrii Nakryiko (2):
libbpf: Reject legacy 'maps' ELF section
libbpf: preserve errno across pr_warn/pr_info/pr_debug
Dave Marchevsky (1):
bpf: Improve docstring for BPF_F_USER_BUILD_ID flag
Florian Fainelli (1):
libbpf: Initialize err in probe_map_create
Gustavo A. R. Silva (1):
treewide: uapi: Replace zero-length arrays with flexible-array members
Hengqi Chen (1):
libbpf: Do not require executable permission for shared libraries
James Hilliard (2):
libbpf: Skip empty sections in bpf_object__init_global_data_maps
libbpf: Ensure functions with always_inline attribute are inline
Jesper Dangaard Brouer (1):
bpf: Add BPF-helper for accessing CLOCK_TAI
Namhyung Kim (1):
perf/core: Add a new read format to get a number of lost samples
include/uapi/linux/bpf.h | 27 +++++++++++++++++++++++++--
include/uapi/linux/perf_event.h | 7 +++++--
include/uapi/linux/pkt_cls.h | 4 ++--
src/bpf_tracing.h | 14 +++++++-------
src/libbpf.c | 25 +++++++++++++++++--------
src/libbpf_probes.c | 2 +-
src/skel_internal.h | 4 ++--
src/usdt.bpf.h | 4 ++--
8 files changed, 61 insertions(+), 26 deletions(-)
--
2.30.2
2022-08-10 14:07:19 -07:00
Andrii Nakryiko
3fa2c28d2c
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: b0d93b44641a83c28014ca38001e85bf6dc8501e
Checkpoint bpf-next commit: 71930846b36f8e4e68267f8a3d47e33435c3657a
Baseline bpf commit: d28b25a62a47a8c8aa19bd543863aab6717e68c9
Checkpoint bpf commit: f946964a9f79f8dcb5a6329265281eebfc23aee5
Andrii Nakryiko (7):
libbpf: add bpf_core_type_matches() helper macro
libbpf: Remove unnecessary usdt_rel_ip assignments
libbpf: generalize virtual __kconfig externs and use it for USDT
libbpf: improve BPF_KPROBE_SYSCALL macro and rename it to BPF_KSYSCALL
libbpf: add ksyscall/kretsyscall sections support for syscall kprobes
libbpf: fallback to tracefs mount point if debugfs is not mounted
libbpf: make RINGBUF map size adjustments more eagerly
Anquan Wu (1):
libbpf: Fix the name of a reused map
Chuang Wang (3):
libbpf: Cleanup the legacy kprobe_event on failed add/attach_event()
libbpf: Fix wrong variable used in perf_event_uprobe_open_legacy()
libbpf: Cleanup the legacy uprobe_event on failed add/attach_event()
Dan Carpenter (3):
libbpf: fix an snprintf() overflow check
libbpf: Fix sign expansion bug in btf_dump_get_enum_value()
libbpf: Fix str_has_sfx()'s return value
Daniel Müller (4):
bpf: Introduce TYPE_MATCH related constants/macros
bpf, libbpf: Add type match support
bpf: Correctly propagate errors up from bpf_core_composites_match
libbpf: Support PPC in arch_specific_syscall_pfx
Hangbin Liu (1):
Bonding: add per-port priority for failover re-selection
Hengqi Chen (1):
libbpf: Error out when binary_path is NULL for uprobe and USDT
Ilya Leoshkevich (1):
libbpf: Extend BPF_KSYSCALL documentation
James Hilliard (1):
libbpf: Disable SEC pragma macro on GCC
Joanne Koong (2):
bpf: Add flags arg to bpf_dynptr_read and bpf_dynptr_write APIs
bpf: fix bpf_skb_pull_data documentation
Joe Burton (1):
libbpf: Add bpf_obj_get_opts()
Jon Doron (1):
libbpf: perfbuf: Add API to get the ring buffer
Pu Lehui (1):
bpf, docs: Remove deprecated xsk libbpf APIs description
Yixun Lan (1):
libbpf, riscv: Use a0 for RC register
docs/libbpf_naming_convention.rst | 13 +-
include/uapi/linux/bpf.h | 15 +-
include/uapi/linux/if_link.h | 1 +
src/bpf.c | 9 +
src/bpf.h | 11 +
src/bpf_core_read.h | 11 +
src/bpf_helpers.h | 13 +
src/bpf_tracing.h | 60 +++-
src/btf_dump.c | 2 +-
src/gen_loader.c | 2 +-
src/libbpf.c | 440 ++++++++++++++++++++++--------
src/libbpf.h | 62 +++++
src/libbpf.map | 3 +
src/libbpf_internal.h | 8 +-
src/relo_core.c | 286 ++++++++++++++++++-
src/relo_core.h | 4 +
src/usdt.bpf.h | 16 +-
src/usdt.c | 6 +-
18 files changed, 793 insertions(+), 169 deletions(-)
--
2.30.2
2022-07-31 16:45:48 -07:00
Andrii Nakryiko
f42d136c1c
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: bb7a4257892717caf82fe6da45b259b35f73445c
Checkpoint bpf-next commit: b0d93b44641a83c28014ca38001e85bf6dc8501e
Baseline bpf commit: a2b1a5d40bd12b44322c2ccd40bb0ec1699708b6
Checkpoint bpf commit: d28b25a62a47a8c8aa19bd543863aab6717e68c9
Andrii Nakryiko (14):
libbpf: move xsk.{c,h} into selftests/bpf
libbpf: remove deprecated low-level APIs
libbpf: remove deprecated XDP APIs
libbpf: remove deprecated probing APIs
libbpf: remove deprecated BTF APIs
libbpf: clean up perfbuf APIs
libbpf: remove prog_info_linear APIs
libbpf: remove most other deprecated high-level APIs
libbpf: remove multi-instance and custom private data APIs
libbpf: cleanup LIBBPF_DEPRECATED_SINCE supporting macros for v0.x
libbpf: remove internal multi-instance prog support
libbpf: clean up SEC() handling
libbpf: enforce strict libbpf 1.0 behaviors
libbpf: fix up few libbpf.map problems
Daniel Müller (1):
bpf: Merge "types_are_compat" logic into relo_core.c
Stanislav Fomichev (4):
bpf: per-cgroup lsm flavor
tools/bpf: Sync btf_ids.h to tools
libbpf: add lsm_cgoup_sock type
libbpf: implement bpf_prog_query_opts
include/uapi/linux/bpf.h | 4 +
src/bpf.c | 200 +----
src/bpf.h | 98 +--
src/btf.c | 183 +----
src/btf.h | 86 +--
src/btf_dump.c | 23 +-
src/libbpf.c | 1500 ++++----------------------------------
src/libbpf.h | 469 +-----------
src/libbpf.map | 114 +--
src/libbpf_common.h | 16 +-
src/libbpf_internal.h | 24 +-
src/libbpf_legacy.h | 28 +-
src/libbpf_probes.c | 125 +---
src/netlink.c | 62 +-
src/relo_core.c | 80 ++
src/relo_core.h | 2 +
src/xsk.c | 1260 --------------------------------
src/xsk.h | 336 ---------
18 files changed, 339 insertions(+), 4271 deletions(-)
delete mode 100644 src/xsk.c
delete mode 100644 src/xsk.h
--
2.30.2
2022-07-03 20:23:34 -07:00
Andrii Nakryiko
bc3673cdd5
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 3e6fe5ce4d4860c3a111c246fddc6f31492f4fb0
Checkpoint bpf-next commit: bb7a4257892717caf82fe6da45b259b35f73445c
Baseline bpf commit: 5e0b0a4c52d30bb09659446f40b77a692361600d
Checkpoint bpf commit: a2b1a5d40bd12b44322c2ccd40bb0ec1699708b6
Delyan Kratunov (1):
libbpf: add support for sleepable uprobe programs
Maxim Mikityanskiy (2):
bpf: Fix documentation of th_len in bpf_tcp_{gen,check}_syncookie
bpf: Add helpers to issue and check SYN cookies in XDP
include/uapi/linux/bpf.h | 88 ++++++++++++++++++++++++++++++++++++++--
src/libbpf.c | 5 ++-
2 files changed, 88 insertions(+), 5 deletions(-)
--
2.30.2
2022-06-24 13:32:31 -07:00