Commit Graph

195 Commits

Author SHA1 Message Date
Mykyta Yatsenko
02bdeb7a2c sync: latest libbpf changes from kernel
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit:   8e64c387c942229c551d0f23de4d9993d3a2acb6
Checkpoint bpf-next commit: 9325d53fe9adff354b6a93fda5f38c165947da0f
Baseline bpf commit:        b4432656b36e5cc1d50a1f2dc15357543add530e
Checkpoint bpf commit:      b4432656b36e5cc1d50a1f2dc15357543add530e

Andrii Nakryiko (1):
  libbpf: Improve BTF dedup handling of "identical" BTF types

Anton Protopopov (3):
  libbpf: Use proper errno value in linker
  bpf: Fix uninitialized values in BPF_{CORE,PROBE}_READ
  libbpf: Use proper errno value in nlattr

Jiri Olsa (1):
  bpf: Add support to retrieve ref_ctr_offset for uprobe perf link

Mykyta Yatsenko (1):
  libbpf: Check bpf_map_skeleton link for NULL

 include/uapi/linux/bpf.h |   1 +
 src/bpf_core_read.h      |   6 ++
 src/btf.c                | 137 +++++++++++++++++++++++++--------------
 src/libbpf.c             |   6 ++
 src/linker.c             |   4 +-
 src/nlattr.c             |  15 ++---
 6 files changed, 111 insertions(+), 58 deletions(-)

Signed-off-by: Mykyta Yatsenko <yatsenko@meta.com>
2025-05-19 10:07:42 -07:00
Andrii Nakryiko
374f7807e1 sync: latest libbpf changes from kernel
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit:   25601e85441dd91cf7973b002f27af4c5b8691ea
Checkpoint bpf-next commit: 8e64c387c942229c551d0f23de4d9993d3a2acb6
Baseline bpf commit:        3f8ad18f8184
Checkpoint bpf commit:      b4432656b36e5cc1d50a1f2dc15357543add530e

Alan Maguire (1):
  libbpf: Add identical pointer detection to btf_dedup_is_equiv()

Anton Protopopov (2):
  bpf: Fix a comment describing bpf_attr
  libbpf: Add likely/unlikely macros and use them in selftests

Carlos Llamas (1):
  libbpf: Fix implicit memfd_create() for bionic

Feng Yang (1):
  libbpf: Fix event name too long error

Ihor Solodrai (1):
  libbpf: Verify section type in btf_find_elf_sections

Jonathan Wiepert (1):
  Use thread-safe function pointer in libbpf_print

Mykyta Yatsenko (1):
  libbpf: Add getters for BTF.ext func and line info

Paul Chaignon (2):
  bpf: Clarify role of BPF_F_RECOMPUTE_CSUM
  bpf: Clarify the meaning of BPF_F_PSEUDO_HDR

Tao Chen (1):
  libbpf: Remove sample_period init in perf_buffer

Viktor Malik (1):
  libbpf: Fix buffer overflow in bpf_object__init_prog

 include/uapi/linux/bpf.h | 18 +++++----
 src/bpf_helpers.h        |  8 ++++
 src/btf.c                | 22 +++++++++++
 src/libbpf.c             | 81 +++++++++++++++++++++-------------------
 src/libbpf.h             |  6 +++
 src/libbpf.map           |  4 ++
 src/libbpf_internal.h    |  9 +++++
 src/linker.c             |  2 +-
 8 files changed, 103 insertions(+), 47 deletions(-)

Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
2025-04-29 11:33:37 -07:00
Mykyta Yatsenko
4659eaafa4 sync: latest libbpf changes from kernel
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit:   488a8544f839048064ea0647596af2aaca7ecc25
Checkpoint bpf-next commit: 25601e85441dd91cf7973b002f27af4c5b8691ea
Baseline bpf commit:        46e88299d19695c2b21e245c52a86ed26ed5cfee
Checkpoint bpf commit:      0c2623cef4f49e1ef6a908a389eea86130d11057

David Wei (1):
  netdev: add io_uring memory provider info

Ian Rogers (1):
  libbpf: Add namespace for errstr making it libbpf_errstr

Jason Xing (6):
  bpf: Add networking timestamping support to bpf_get/setsockopt()
  bpf: Add BPF_SOCK_OPS_TSTAMP_SCHED_CB callback
  bpf: Add BPF_SOCK_OPS_TSTAMP_SND_SW_CB callback
  bpf: Add BPF_SOCK_OPS_TSTAMP_SND_HW_CB callback
  bpf: Add BPF_SOCK_OPS_TSTAMP_ACK_CB callback
  bpf: Add BPF_SOCK_OPS_TSTAMP_SENDMSG_CB callback

Joe Damato (1):
  netdev-genl: Add an XSK attribute to queues

Kan Liang (1):
  perf: Extend per event callchain limit to branch stack

Mykyta Yatsenko (2):
  bpf: BPF token support for BPF_BTF_GET_FD_BY_ID
  libbpf: Pass BPF token from find_prog_btf_id to BPF_BTF_GET_FD_BY_ID

Song Yoong Siang (1):
  xsk: Add launch time hardware offload support to XDP Tx metadata

 include/uapi/linux/bpf.h        | 31 +++++++++++++++++++++++++++++++
 include/uapi/linux/if_xdp.h     | 10 ++++++++++
 include/uapi/linux/netdev.h     | 16 ++++++++++++++++
 include/uapi/linux/perf_event.h |  2 ++
 src/bpf.c                       |  3 ++-
 src/bpf.h                       |  3 ++-
 src/btf.c                       | 15 +++++++++++++--
 src/libbpf.c                    | 10 +++++-----
 src/libbpf_internal.h           |  1 +
 src/str_error.c                 |  2 +-
 src/str_error.h                 |  7 +++++--
 11 files changed, 88 insertions(+), 12 deletions(-)

Signed-off-by: Mykyta Yatsenko <yatsenko@meta.com>
2025-04-02 14:24:25 -07:00
Ihor Solodrai
374036c9f1 sync: latest libbpf changes from kernel
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit:   239860828f8660e2be487e2fbdae2640cce3fd67
Checkpoint bpf-next commit: 79d93c8ff35855d3283ee7d82dfe0c54f90b9986
Baseline bpf commit:        319fc77f8f45a1b3dba15b0cc1a869778fd222f7
Checkpoint bpf commit:      6ccf6adb05d0fe3dbb1a77ab90bf054da8a2198d

Ihor Solodrai (1):
  libbpf: Implement bpf_usdt_arg_size BPF function

Mykyta Yatsenko (3):
  libbpf: Use map_is_created helper in map setters
  libbpf: Introduce more granular state for bpf_object
  libbpf: Split bpf object load into prepare/load

Nandakumar Edamana (1):
  libbpf: Fix out-of-bound read

Peilin Ye (1):
  bpf: Introduce load-acquire and store-release instructions

Yonghong Song (1):
  bpf: Allow pre-ordering for bpf cgroup progs

 include/uapi/linux/bpf.h |   4 +
 src/libbpf.c             | 201 ++++++++++++++++++++++++++-------------
 src/libbpf.h             |  13 +++
 src/libbpf.map           |   1 +
 src/usdt.bpf.h           |  32 +++++++
 5 files changed, 183 insertions(+), 68 deletions(-)

Signed-off-by: Ihor Solodrai <ihor.solodrai@linux.dev>
2025-03-10 15:35:17 -07:00
Ihor Solodrai
42a6ef6316 sync: latest libbpf changes from kernel
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit:   01f3ce5328c405179b2c69ea047c423dad2bfa6d
Checkpoint bpf-next commit: 239860828f8660e2be487e2fbdae2640cce3fd67
Baseline bpf commit:        c45323b7560ec87c37c729b703c86ee65f136d75
Checkpoint bpf commit:      319fc77f8f45a1b3dba15b0cc1a869778fd222f7

Andrii Nakryiko (2):
  libbpf: fix LDX/STX/ST CO-RE relocation size adjustment logic
  libbpf: Fix hypothetical STT_SECTION extern NULL deref case

Daniel Borkmann (1):
  netkit: Allow for configuring needed_{head,tail}room

Ihor Solodrai (3):
  libbpf: Introduce kflag for type_tags and decl_tags in BTF
  docs/bpf: Document the semantics of BTF tags with kind_flag
  libbpf: Check the kflag of type tags in btf_dump

Tao Chen (1):
  libbpf: Wrap libbpf API direct err with libbpf_err

Tony Ambardar (1):
  libbpf: Fix accessing BTF.ext core_relo header

Yonghong Song (1):
  bpf: Sync uapi bpf.h header for the tooling infra

 include/uapi/linux/bpf.h     |  5 +-
 include/uapi/linux/btf.h     |  3 +-
 include/uapi/linux/if_link.h |  2 +
 src/btf.c                    | 90 ++++++++++++++++++++++++++----------
 src/btf.h                    |  3 ++
 src/btf_dump.c               |  5 +-
 src/libbpf.c                 | 26 +++++------
 src/libbpf.map               |  2 +
 src/linker.c                 |  2 +-
 src/relo_core.c              | 24 ++++++++--
 10 files changed, 116 insertions(+), 46 deletions(-)

Signed-off-by: Ihor Solodrai <ihor.solodrai@linux.dev>
2025-02-24 15:10:59 -08:00
Andrii Nakryiko
7abfe520df sync: latest libbpf changes from kernel
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit:   f44275e7155dc310d36516fc25be503da099781c
Checkpoint bpf-next commit: 01f3ce5328c405179b2c69ea047c423dad2bfa6d
Baseline bpf commit:        9d89551994a430b50c4fffcb1e617a057fa76e20
Checkpoint bpf commit:      c45323b7560ec87c37c729b703c86ee65f136d75

Andrii Nakryiko (1):
  libbpf: Work around kernel inconsistently stripping '.llvm.' suffix

Pu Lehui (2):
  libbpf: Fix return zero when elf_begin failed
  libbpf: Fix incorrect traversal end type ID when marking
    BTF_IS_EMBEDDED

Vishal Chourasia (1):
  tools: Sync if_xdp.h uapi tooling header

Yonghong Song (1):
  libbpf: Add unique_match option for multi kprobe

 include/uapi/linux/if_xdp.h |  4 ++--
 src/btf.c                   |  1 +
 src/btf_relocate.c          |  2 +-
 src/libbpf.c                | 39 +++++++++++++++++++++++++++++++++++--
 src/libbpf.h                |  4 +++-
 5 files changed, 44 insertions(+), 6 deletions(-)

Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
2025-01-17 12:31:44 -08:00
Daniel Müller
0ff2f8e0ee sync: latest libbpf changes from kernel
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit:   a1087da9d11e5bcacc706002bc0f84b790881f69
Checkpoint bpf-next commit: f44275e7155dc310d36516fc25be503da099781c
Baseline bpf commit:        fb86c42a2a5d44e849ddfbc98b8d2f4f40d36ee3
Checkpoint bpf commit:      9d89551994a430b50c4fffcb1e617a057fa76e20

Adrian Hunter (1):
  perf/core: Add aux_pause, aux_resume, aux_start_paused

Alastair Robertson (2):
  libbpf: Pull file-opening logic up to top-level functions
  libbpf: Extend linker API to support in-memory ELF files

Andrii Nakryiko (1):
  libbpf: don't adjust USDT semaphore address if .stapsdt.base addr is
    missing

Anton Protopopov (2):
  bpf: Add fd_array_cnt attribute for prog_load
  libbpf: prog load: Allow to use fd_array_cnt

Ben Olson (1):
  libbpf: Improve debug message when the base BTF cannot be found

Daniel Borkmann (1):
  tools: Sync if_link.h uapi tooling header

Daniel Xu (1):
  libbpf: Set MFD_NOEXEC_SEAL when creating memfd

Eric Dumazet (1):
  net: add IFLA_MAX_PACING_OFFLOAD_HORIZON device attribute

Jiri Olsa (1):
  libbpf: Fix memory leak in bpf_program__attach_uprobe_multi

Joe Damato (3):
  netdev-genl: Dump napi_defer_hard_irqs
  netdev-genl: Dump gro_flush_timeout
  netdev-genl: Support setting per-NAPI config values

Martin Karsten (1):
  net: Add napi_struct parameter irq_suspend_timeout

Quentin Monnet (1):
  libbpf: Fix segfault due to libelf functions not setting errno

Sidong Yang (1):
  libbpf: Change hash_combine parameters from long to unsigned long

 include/uapi/linux/bpf.h        |  10 +
 include/uapi/linux/if_link.h    | 554 +++++++++++++++++++++++++++++++-
 include/uapi/linux/netdev.h     |   4 +
 include/uapi/linux/perf_event.h |  11 +-
 src/bpf.c                       |   3 +-
 src/bpf.h                       |   5 +-
 src/btf.c                       |   4 +-
 src/libbpf.c                    |  25 +-
 src/libbpf.h                    |   5 +
 src/libbpf.map                  |   4 +
 src/linker.c                    | 248 ++++++++++----
 src/usdt.c                      |   2 +-
 12 files changed, 794 insertions(+), 81 deletions(-)

Signed-off-by: Daniel Müller <deso@posteo.net>
2025-01-08 14:58:04 -08:00
Andrii Nakryiko
6c25f7dcb5 sync: latest libbpf changes from kernel
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit:   c6fb8030b4baa01c850f99fc6da051b1017edc46
Checkpoint bpf-next commit: a1087da9d11e5bcacc706002bc0f84b790881f69
Baseline bpf commit:        d5fb316e2af1d947f0f6c3666e373a54d9f27c6f
Checkpoint bpf commit:      fb86c42a2a5d44e849ddfbc98b8d2f4f40d36ee3

Andrii Nakryiko (1):
  libbpf: start v1.6 development cycle

Jiri Olsa (2):
  bpf: Add support for uprobe multi session attach
  libbpf: Add support for uprobe multi session attach

Mykyta Yatsenko (4):
  libbpf: Introduce errstr() for stringifying errno
  libbpf: Stringify errno in log messages in libbpf.c
  libbpf: Stringify errno in log messages in btf*.c
  libbpf: Stringify errno in log messages in the remaining code

 include/uapi/linux/bpf.h |   1 +
 src/bpf.c                |   1 +
 src/btf.c                |  26 +--
 src/btf_dump.c           |   3 +-
 src/elf.c                |   4 +-
 src/features.c           |  15 +-
 src/gen_loader.c         |   3 +-
 src/libbpf.c             | 375 ++++++++++++++++++---------------------
 src/libbpf.h             |   4 +-
 src/libbpf.map           |   3 +
 src/libbpf_version.h     |   2 +-
 src/linker.c             |  21 ++-
 src/ringbuf.c            |  34 ++--
 src/str_error.c          |  71 ++++++++
 src/str_error.h          |   7 +
 src/usdt.c               |  32 ++--
 16 files changed, 332 insertions(+), 270 deletions(-)

Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
2024-11-13 19:25:37 -08:00
Andrii Nakryiko
891438c086 sync: latest libbpf changes from kernel
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit:   989a29cfed9b5092c3e18be14e9032c51bb1c9f6
Checkpoint bpf-next commit: c6fb8030b4baa01c850f99fc6da051b1017edc46
Baseline bpf commit:        b836cbdf3b81a4a22b3452186efa2e5105a77e10
Checkpoint bpf commit:      d5fb316e2af1d947f0f6c3666e373a54d9f27c6f

Andrii Nakryiko (1):
  libbpf: move global data mmap()'ing into bpf_object__load()

Eder Zulian (1):
  libbpf: Prevent compiler warnings/errors

Hou Tao (1):
  bpf: Add the missing BPF_LINK_TYPE invocation for sockmap

Kui-Feng Lee (1):
  libbpf: define __uptr.

 include/uapi/linux/bpf.h |  3 ++
 src/bpf_helpers.h        |  1 +
 src/btf_dump.c           |  4 +-
 src/libbpf.c             | 83 +++++++++++++++++++---------------------
 4 files changed, 46 insertions(+), 45 deletions(-)

Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
2024-10-24 14:34:52 -07:00
Andrii Nakryiko
fc064eb41e sync: latest libbpf changes from kernel
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit:   b24d7f0da6ef5a23456a301eaf51b170f961d4ae
Checkpoint bpf-next commit: 989a29cfed9b5092c3e18be14e9032c51bb1c9f6
Baseline bpf commit:        b24d7f0da6ef5a23456a301eaf51b170f961d4ae
Checkpoint bpf commit:      b836cbdf3b81a4a22b3452186efa2e5105a77e10

Andrii Nakryiko (2):
  libbpf: fix sym_is_subprog() logic for weak global subprogs
  libbpf: never interpret subprogs in .text as entry programs

Chen Ni (1):
  libbpf: Remove unneeded semicolon

Eduard Zingerman (1):
  bpf: __bpf_fastcall for bpf_get_smp_processor_id in uapi

Eric Long (1):
  libbpf: Do not resolve size on duplicate FUNCs

Ihor Solodrai (1):
  libbpf: Change log level of BTF loading error message

Martin Kelly (1):
  bpf: Update bpf_override_return() comment

Matteo Croce (1):
  bpf: fix argument type in bpf_loop documentation

Namhyung Kim (1):
  libbpf: Fix possible compiler warnings in hashmap

Tao Chen (1):
  libbpf: Fix expected_attach_type set handling in program load callback

Tony Ambardar (7):
  libbpf: Improve log message formatting
  libbpf: Fix header comment typos for BTF.ext
  libbpf: Fix output .symtab byte-order during linking
  libbpf: Support BTF.ext loading and output in either endianness
  libbpf: Support opening bpf objects of either endianness
  libbpf: Support linking bpf objects of either endianness
  libbpf: Support creating light skeleton of either endianness

 include/uapi/linux/bpf.h |   8 +-
 src/bpf_gen_internal.h   |   1 +
 src/btf.c                | 280 ++++++++++++++++++++++++++++++---------
 src/btf.h                |   3 +
 src/btf_dump.c           |   2 +-
 src/btf_relocate.c       |   2 +-
 src/gen_loader.c         | 187 ++++++++++++++++++--------
 src/hashmap.h            |  20 +--
 src/libbpf.c             |  81 ++++++++---
 src/libbpf.map           |   2 +
 src/libbpf_internal.h    |  43 +++++-
 src/linker.c             |  84 +++++++++---
 src/relo_core.c          |   2 +-
 src/skel_internal.h      |   3 +-
 src/zip.c                |   2 +-
 15 files changed, 550 insertions(+), 170 deletions(-)

Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
2024-10-11 14:12:43 -07:00
Jordan Rome
91ccd57ca9 sync: latest libbpf changes from kernel
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit:   2ad6d23f465a4f851e3bcf6d74c315ce7b2c205b
Checkpoint bpf-next commit: b24d7f0da6ef5a23456a301eaf51b170f961d4ae
Baseline bpf commit:        b408473ea01b2e499d23503e2bf898416da9d7ac
Checkpoint bpf commit:      b24d7f0da6ef5a23456a301eaf51b170f961d4ae

Alan Maguire (1):
  bpf/bpf_get,set_sockopt: add option to set TCP-BPF sock ops flags

Daniel Borkmann (1):
  bpf: Sync uapi bpf.h header to tools directory

Donald Hunter (1):
  docs/bpf: Add missing BPF program types to docs

Ihor Solodrai (1):
  libbpf: Add bpf_object__token_fd accessor

Jiri Olsa (1):
  libbpf: Fix uretprobe.multi.s programs auto attachment

Lin Yikai (1):
  libbpf: fix some typos in libbpf

Mina Almasry (2):
  net: netdev netlink api to bind dma-buf to a net device
  netdev: add dmabuf introspection

Pu Lehui (3):
  libbpf: Access first syscall argument with CO-RE direct read on s390
  libbpf: Access first syscall argument with CO-RE direct read on arm64
  libbpf: Fix accessing first syscall argument on RV64

Sam James (1):
  libbpf: Workaround (another) -Wmaybe-uninitialized false positive

Shuyi Cheng (1):
  libbpf: Fixed getting wrong return address on arm64 architecture

Yusheng Zheng (1):
  libbpf: Fix some typos in comments

 docs/program_types.rst      | 30 ++++++++++++++++++++++++++----
 include/uapi/linux/bpf.h    | 25 ++++++++++++-------------
 include/uapi/linux/netdev.h | 13 +++++++++++++
 src/bpf.h                   |  4 ++--
 src/bpf_helpers.h           |  2 +-
 src/bpf_tracing.h           | 25 ++++++++++++++++---------
 src/btf.c                   |  4 ++--
 src/btf.h                   |  2 +-
 src/btf_dump.c              |  2 +-
 src/libbpf.c                | 13 +++++++++----
 src/libbpf.h                | 18 +++++++++++++-----
 src/libbpf.map              |  1 +
 src/libbpf_legacy.h         |  4 ++--
 src/linker.c                |  4 ++--
 src/skel_internal.h         |  2 +-
 src/usdt.bpf.h              |  2 +-
 16 files changed, 103 insertions(+), 48 deletions(-)

Signed-off-by: Jordan Rome <linux@jordanrome.com>
2024-10-09 14:13:35 -07:00
Andrii Nakryiko
76c9f50f3e sync: latest libbpf changes from kernel
Syncing latest libbpf commits from kernel repository.
Baseline bpf-next commit:   ec5b8c76ab1c6d163762d60cfbedcd27e7527144
Checkpoint bpf-next commit: 2ad6d23f465a4f851e3bcf6d74c315ce7b2c205b
Baseline bpf commit:        e1533b6319ab9c3a97dad314dd88b3783bc41b69
Checkpoint bpf commit:      b408473ea01b2e499d23503e2bf898416da9d7ac

Alan Maguire (1):
  libbpf: Fix license for btf_relocate.c

Andrii Nakryiko (2):
  libbpf: Fix no-args func prototype BTF dumping syntax
  libbpf: Fix bpf_object__open_skeleton()'s mishandling of options

David Vernet (1):
  libbpf: Don't take direct pointers into BTF data from st_ops

Jordan Rome (1):
  bpf: Add bpf_copy_from_user_str kfunc

Kan Liang (1):
  perf/x86/intel: Support new data source for Lunar Lake

Sam James (1):
  libbpf: Workaround -Wmaybe-uninitialized false positive

Stanislav Fomichev (1):
  selftests/bpf: Add XDP_UMEM_TX_METADATA_LEN to XSK TX metadata test

Tony Ambardar (1):
  libbpf: Ensure new BTF objects inherit input endianness

 include/uapi/linux/bpf.h        |  9 ++++
 include/uapi/linux/if_xdp.h     |  4 ++
 include/uapi/linux/perf_event.h |  6 ++-
 src/btf.c                       |  4 ++
 src/btf_dump.c                  |  8 ++--
 src/btf_relocate.c              |  2 +-
 src/elf.c                       |  3 ++
 src/libbpf.c                    | 75 ++++++++++++++-------------------
 8 files changed, 62 insertions(+), 49 deletions(-)

Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
2024-08-30 16:29:01 -07:00
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