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
Andrii Nakryiko
e5ff285a44
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: fe92833524e368e59bba9c57e00f7359f133667f
Checkpoint bpf-next commit: 3e6fe5ce4d4860c3a111c246fddc6f31492f4fb0
Baseline bpf commit: 825464e79db4aac936e0fdae62cdfb7546d0028f
Checkpoint bpf commit: 5e0b0a4c52d30bb09659446f40b77a692361600d
Andrii Nakryiko (1):
libbpf: Fix internal USDT address translation logic for shared
libraries
Yonghong Song (1):
libbpf: Fix an unsigned < 0 bug
src/libbpf.c | 2 +-
src/usdt.c | 123 ++++++++++++++++++++++++++-------------------------
2 files changed, 64 insertions(+), 61 deletions(-)
--
2.30.2
2022-06-16 16:58:52 -07:00
Andrii Nakryiko
5497411f48
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 02f4afebf8a54ba16f99f4f6ca10df3efeac6229
Checkpoint bpf-next commit: fe92833524e368e59bba9c57e00f7359f133667f
Baseline bpf commit: d08af2c46881b62f4efad8ebb7eae381fa1f1033
Checkpoint bpf commit: 825464e79db4aac936e0fdae62cdfb7546d0028f
Andrii Nakryiko (1):
libbpf: Fix uprobe symbol file offset calculation logic
Yonghong Song (10):
bpf: Add btf enum64 support
libbpf: Permit 64bit relocation value
libbpf: Fix an error in 64bit relocation value computation
libbpf: Refactor btf__add_enum() for future code sharing
libbpf: Add enum64 parsing and new enum64 public API
libbpf: Add enum64 deduplication support
libbpf: Add enum64 support for btf_dump
libbpf: Add enum64 sanitization
libbpf: Add enum64 support for bpf linking
libbpf: Add enum64 relocation support
include/uapi/linux/btf.h | 17 +++-
src/btf.c | 201 +++++++++++++++++++++++++++++++++++----
src/btf.h | 32 ++++++-
src/btf_dump.c | 137 +++++++++++++++++++-------
src/libbpf.c | 126 ++++++++++++++----------
src/libbpf.map | 2 +
src/libbpf_internal.h | 2 +
src/linker.c | 2 +
src/relo_core.c | 105 ++++++++++++--------
src/relo_core.h | 4 +-
10 files changed, 483 insertions(+), 145 deletions(-)
--
2.30.2
2022-06-10 14:13:02 -07:00
Andrii Nakryiko
eb1d1ad83f
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: ac6a65868a5a45db49d5ee8524df3b701110d844
Checkpoint bpf-next commit: 02f4afebf8a54ba16f99f4f6ca10df3efeac6229
Baseline bpf commit: f3f19f939c11925dadd3f4776f99f8c278a7017b
Checkpoint bpf commit: d08af2c46881b62f4efad8ebb7eae381fa1f1033
Andrii Nakryiko (2):
libbpf: start 1.0 development cycle
libbpf: remove bpf_create_map*() APIs
Daniel Müller (5):
libbpf: Introduce libbpf_bpf_prog_type_str
libbpf: Introduce libbpf_bpf_map_type_str
libbpf: Introduce libbpf_bpf_attach_type_str
libbpf: Introduce libbpf_bpf_link_type_str
libbpf: Fix a couple of typos
Douglas Raillard (1):
libbpf: Fix determine_ptr_size() guessing
Eric Dumazet (1):
net: add IFLA_TSO_{MAX_SIZE|SEGS} attributes
Geliang Tang (1):
bpf: Add bpf_skc_to_mptcp_sock_proto
Joanne Koong (5):
bpf: Add verifier support for dynptrs
bpf: Add bpf_dynptr_from_mem for local dynptrs
bpf: Dynptr support for ring buffers
bpf: Add bpf_dynptr_read and bpf_dynptr_write
bpf: Add dynptr data slices
Julia Lawall (1):
libbpf: Fix typo in comment
Yuze Chi (1):
libbpf: Fix is_pow_of_2
include/uapi/linux/bpf.h | 90 +++++++++++++++++++
include/uapi/linux/if_link.h | 2 +
src/bpf.c | 80 -----------------
src/bpf.h | 42 ---------
src/btf.c | 28 ++++--
src/libbpf.c | 167 +++++++++++++++++++++++++++++++++--
src/libbpf.h | 38 +++++++-
src/libbpf.map | 10 +++
src/libbpf_internal.h | 5 ++
src/libbpf_version.h | 4 +-
src/linker.c | 5 --
src/relo_core.c | 8 +-
12 files changed, 332 insertions(+), 147 deletions(-)
--
2.30.2
2022-06-07 17:39:28 -07:00
Andrii Nakryiko
86eb09863c
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: b2531d4bdce19f28364b45aac9132e153b1f23a4
Checkpoint bpf-next commit: ac6a65868a5a45db49d5ee8524df3b701110d844
Baseline bpf commit: f3f19f939c11925dadd3f4776f99f8c278a7017b
Checkpoint bpf commit: f3f19f939c11925dadd3f4776f99f8c278a7017b
Andrii Nakryiko (1):
libbpf: fix memory leak in attach_tp for target-less tracepoint
program
src/libbpf.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
--
2.30.2
2022-05-16 13:46:05 -07:00
Andrii Nakryiko
75452cd290
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: d54d06a4c4bc5d76815d02e4b041b31d9dbb3fef
Checkpoint bpf-next commit: b2531d4bdce19f28364b45aac9132e153b1f23a4
Baseline bpf commit: ba3beec2ec1d3b4fd8672ca6e781dac4b3267f6e
Checkpoint bpf commit: f3f19f939c11925dadd3f4776f99f8c278a7017b
Andrii Nakryiko (12):
libbpf: Allow "incomplete" basic tracing SEC() definitions
libbpf: Support target-less SEC() definitions for BTF-backed programs
libbpf: Append "..." in fixed up log if CO-RE spec is truncated
libbpf: Use libbpf_mem_ensure() when allocating new map
libbpf: Allow to opt-out from creating BPF maps
libbpf: Make __kptr and __kptr_ref unconditionally use btf_type_tag()
attr
libbpf: Improve usability of field-based CO-RE helpers
libbpf: Complete field-based CO-RE helpers with field offset helper
libbpf: Provide barrier() and barrier_var() in bpf_helpers.h
libbpf: Automatically fix up BPF_MAP_TYPE_RINGBUF size, if necessary
libbpf: Clean up ringbuf size adjustment implementation
libbpf: Add safer high-level wrappers for map operations
Feng Zhou (1):
bpf: add bpf_map_lookup_percpu_elem for percpu map
Jiri Olsa (1):
libbpf: Add bpf_program__set_insns function
Kaixi Fan (1):
bpf: Add source ip in "struct bpf_tunnel_key"
Kui-Feng Lee (3):
bpf, x86: Generate trampolines from bpf_tramp_links
bpf, x86: Attach a cookie to fentry/fexit/fmod_ret/lsm.
libbpf: Assign cookies to links in libbpf.
include/uapi/linux/bpf.h | 23 ++
src/bpf.c | 22 ++
src/bpf.h | 4 +
src/bpf_core_read.h | 37 ++-
src/bpf_helpers.h | 29 ++-
src/libbpf.c | 473 ++++++++++++++++++++++++++++++++-------
src/libbpf.h | 156 +++++++++++++
src/libbpf.map | 12 +-
8 files changed, 659 insertions(+), 97 deletions(-)
--
2.30.2
2022-05-13 16:13:31 -07:00
Andrii Nakryiko
3a4e26307d
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 34ba23b44c664792a4308ec37b5788a3162944ec
Checkpoint bpf-next commit: d54d06a4c4bc5d76815d02e4b041b31d9dbb3fef
Baseline bpf commit: 8de8b71b787f38983d414d2dba169a3bfefa668a
Checkpoint bpf commit: ba3beec2ec1d3b4fd8672ca6e781dac4b3267f6e
Alan Maguire (1):
libbpf: Usdt aarch64 arg parsing support
Andrii Nakryiko (10):
libbpf: Support opting out from autoloading BPF programs declaratively
libbpf: Teach bpf_link_create() to fallback to
bpf_raw_tracepoint_open()
libbpf: Fix anonymous type check in CO-RE logic
libbpf: Drop unhelpful "program too large" guess
libbpf: Fix logic for finding matching program for CO-RE relocation
libbpf: Avoid joining .BTF.ext data with BPF programs by section name
libbpf: Record subprog-resolved CO-RE relocations unconditionally
libbpf: Refactor CO-RE relo human description formatting routine
libbpf: Simplify bpf_core_parse_spec() signature
libbpf: Fix up verifier log for unguarded failed CO-RE relos
Gaosheng Cui (1):
libbpf: Remove redundant non-null checks on obj_elf
Grant Seltzer (4):
libbpf: Add error returns to two API functions
libbpf: Update API functions usage to check error
libbpf: Add documentation to API functions
libbpf: Improve libbpf API documentation link position
Kumar Kartikeya Dwivedi (2):
bpf: Allow storing referenced kptr in map
libbpf: Add kptr type tag macros to bpf_helpers.h
Pu Lehui (2):
libbpf: Fix usdt_cookie being cast to 32 bits
libbpf: Support riscv USDT argument parsing logic
Runqing Yang (1):
libbpf: Fix a bug with checking bpf_probe_read_kernel() support in old
kernels
Vladimir Isaev (1):
libbpf: Add ARC support to bpf_tracing.h
Yuntao Wang (1):
libbpf: Remove unnecessary type cast
docs/index.rst | 3 +-
include/uapi/linux/bpf.h | 12 ++
src/bpf.c | 34 ++++-
src/bpf_helpers.h | 7 +
src/bpf_tracing.h | 23 +++
src/btf.c | 9 +-
src/libbpf.c | 322 ++++++++++++++++++++++++++++++---------
src/libbpf.h | 82 +++++++++-
src/libbpf_internal.h | 9 +-
src/relo_core.c | 104 +++++++------
src/relo_core.h | 6 +
src/usdt.c | 191 ++++++++++++++++++++++-
12 files changed, 668 insertions(+), 134 deletions(-)
--
2.30.2
2022-04-27 15:19:08 -07:00
Andrii Nakryiko
bbfb018473
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 2d0df01974ce2b59b6f7d5bd3ea58d74f12ddf85
Checkpoint bpf-next commit: 34ba23b44c664792a4308ec37b5788a3162944ec
Baseline bpf commit: 0a210af6d0a0595fef566e7eeb072f10f37774be
Checkpoint bpf commit: 8de8b71b787f38983d414d2dba169a3bfefa668a
Alan Maguire (2):
libbpf: Improve library identification for uprobe binary path
resolution
libbpf: Improve string parsing for uprobe auto-attach
Andrii Nakryiko (5):
libbpf: Fix use #ifdef instead of #if to avoid compiler warning
libbpf: Use strlcpy() in path resolution fallback logic
libbpf: Allow WEAK and GLOBAL bindings during BTF fixup
libbpf: Don't error out on CO-RE relos for overriden weak subprogs
libbpf: Use weak hidden modifier for USDT BPF-side API functions
Colin Ian King (1):
libbpf: Fix spelling mistake "libaries" -> "libraries"
Haowen Bai (1):
libbpf: Potential NULL dereference in usdt_manager_attach_usdt()
Ilya Leoshkevich (3):
libbpf: Minor style improvements in USDT code
libbpf: Make BPF-side of USDT support work on big-endian machines
libbpf: Add s390-specific USDT arg spec parsing logic
src/libbpf.c | 105 ++++++++++++++++++++----------------------
src/libbpf_internal.h | 11 +++++
src/usdt.bpf.h | 13 ++++--
src/usdt.c | 79 ++++++++++++++++++++++++++-----
4 files changed, 136 insertions(+), 72 deletions(-)
--
2.30.2
2022-04-09 09:17:51 -07:00
Andrii Nakryiko
750c9fb595
sync: latest libbpf changes from kernel
...
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit: 9492450fd28736262dea9143ebb3afc2c131ace1
Checkpoint bpf-next commit: 2d0df01974ce2b59b6f7d5bd3ea58d74f12ddf85
Baseline bpf commit: 6bd0c76bd70447aedfeafa9e1fcc249991d6c678
Checkpoint bpf commit: 0a210af6d0a0595fef566e7eeb072f10f37774be
Alan Maguire (3):
libbpf: auto-resolve programs/libraries when necessary for uprobes
libbpf: Support function name-based attach uprobes
libbpf: Add auto-attach for uprobes based on section name
Andrii Nakryiko (6):
libbpf: Avoid NULL deref when initializing map BTF info
libbpf: Add BPF-side of USDT support
libbpf: Wire up USDT API and bpf_link integration
libbpf: Add USDT notes parsing and resolution logic
libbpf: Wire up spec management and other arch-independent USDT logic
libbpf: Add x86-specific USDT arg spec parsing logic
Anshuman Khandual (1):
perf: Add irq and exception return branch types
Geliang Tang (1):
bpf: Sync comments for bpf_get_stack
Haiyue Wang (1):
bpf: Correct the comment for BTF kind bitfield
Hengqi Chen (1):
libbpf: Close fd in bpf_object__reuse_map
Ilya Leoshkevich (1):
libbpf: Support Debian in resolve_full_path()
Yuntao Wang (1):
libbpf: Don't return -EINVAL if hdr_len < offsetofend(core_relo_len)
include/uapi/linux/bpf.h | 8 +-
include/uapi/linux/btf.h | 4 +-
include/uapi/linux/perf_event.h | 2 +
src/btf.c | 6 +-
src/libbpf.c | 486 +++++++++++-
src/libbpf.h | 41 +-
src/libbpf.map | 1 +
src/libbpf_internal.h | 19 +
src/usdt.bpf.h | 256 +++++++
src/usdt.c | 1280 +++++++++++++++++++++++++++++++
10 files changed, 2080 insertions(+), 23 deletions(-)
create mode 100644 src/usdt.bpf.h
create mode 100644 src/usdt.c
--
2.30.2
2022-04-06 07:34:58 -07:00