63 Commits

Author SHA256 Message Date
2238141547 Accepting request 1294661 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1294661
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=29
2025-07-22 10:53:59 +00:00
9370442474 Accepting request 1283405 from devel:libraries:c_c++
Workaround kernel module size increase due to BTF deduplication issue since the introduction of TYPEOF_UNQUAL (poo#183503)

OBS-URL: https://build.opensuse.org/request/show/1283405
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=28
2025-06-10 06:57:44 +00:00
Shung-Hsi Yu
2b4f0f2395 Add report reference
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=56
2025-06-05 14:47:39 +00:00
Shung-Hsi Yu
4fc55ab17f - Workaround kernel module size increase due to BTF deduplication
issue since the introduction of TYPEOF_UNQUAL
  * add 0001-libbpf-Add-identical-pointer-detection-to-btf_dedup_.patch

OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=55
2025-06-05 14:38:07 +00:00
54d6377069 Accepting request 1279755 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1279755
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=27
2025-05-27 16:49:16 +00:00
66726896d8 Update to 1.5.1
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=53
2025-05-24 10:04:34 +00:00
11478b6761 Accepting request 1235805 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1235805
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=26
2025-01-09 14:05:26 +00:00
Shung-Hsi Yu
65065dce7c Incorporate change log entries from SLES
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=51
2025-01-08 07:54:50 +00:00
440a6d99a7 Accepting request 1225185 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1225185
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=25
2024-11-21 14:13:02 +00:00
Shung-Hsi Yu
4542be3c8c Update to 1.5.0
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=49
2024-11-20 02:37:09 +00:00
7c0e97cb72 Accepting request 1199948 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1199948
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=24
2024-09-12 14:53:54 +00:00
Shung-Hsi Yu
3cd934f954 Update to v1.4.6
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=47
2024-09-11 05:59:21 +00:00
9682ffb9d6 Accepting request 1188837 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1188837
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=23
2024-07-22 15:14:08 +00:00
4fac0884ae - update to 1.4.5:
* Another small bug fix release backporting https://github.com/
    libbpf/libbpf/commit/d9f9fd5b22223ae69c62e083da6093d95a0db799
    which works around kernel-side bug with USDT PID filtering on
    kernels that support multi-uprobe (but have broken PID
    filtering).

OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=45
2024-07-20 18:04:22 +00:00
7d666b614a Accepting request 1178438 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1178438
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=22
2024-06-06 10:31:16 +00:00
Shung-Hsi Yu
0f35fd2bbb Accepting request 1178437 from home:shunghsiyu:branches:bpf
Update to 1.4.3: fix libbpf unintentionally dropping FD_CLOEXEC flag when (internally)
    duping FDs

OBS-URL: https://build.opensuse.org/request/show/1178437
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=43
2024-06-04 06:16:07 +00:00
25a70514ec Accepting request 1173943 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1173943
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=21
2024-05-16 15:12:33 +00:00
eb98c6490a Accepting request 1173397 from home:flonnegren:branches:devel:libraries:c_c++
Update to v1.4.2

OBS-URL: https://build.opensuse.org/request/show/1173397
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=41
2024-05-14 10:02:48 +00:00
a4175429ff Accepting request 1171295 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1171295
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=20
2024-05-02 21:42:54 +00:00
Shung-Hsi Yu
42af037966 Accepting request 1171290 from home:flonnegren:branches:devel:libraries:c_c++
Update to v1.4.1

OBS-URL: https://build.opensuse.org/request/show/1171290
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=39
2024-05-02 08:57:06 +00:00
fd08afe839 Accepting request 1164453 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1164453
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=19
2024-04-04 20:24:42 +00:00
Shung-Hsi Yu
0dbb3eaec9 Accepting request 1164452 from home:shunghsiyu:branches:bpf
Update to 1.4.0

OBS-URL: https://build.opensuse.org/request/show/1164452
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=37
2024-04-04 01:43:36 +00:00
a072e9ea1d Accepting request 1128704 from devel:libraries:c_c++
- update to 1.3.0:
  * support for `netfilter` programs is added
    `SEC("netfilter")` is now available
  * API function `bpf_program__attach_netfilter()` is now
    available
  * support for `tcx` BPF programs is added:
  * the following new SEC definitions are now available:
    SEC("tc/egress"), SEC("tc/ingress"), SEC("tcx/egress"),
    SEC("tcx/ingress")
  * the following SEC definitions are now considered legacy:
    SEC("tc"), SEC("action"), SEC("classifier")
  * functions `bpf_prog_attach_opts()` and
    `bpf_prog_query_opts()` are extended to work with `tcx`
    programs, plus two new API functions are added:
  * the following new SEC definitions are now available:
    SEC("uprobe.multi"), SEC("uprobe.multi.s"),
    SEC("uretprobe.multi"), SEC("uretprobe.multi.s")
  * support for section `SEC("usdt.s")` is added for sleepable
    `usdt` programs;
  * support for Unix domain socket cgroup BPF programs is added
    the following new SEC definitions are now available:
     SEC("cgroup/connect_unix"),SEC("cgroup/sendmsg_unix"),
     SEC("cgroup/recvmsg_unix"), SEC("cgroup/getpeername_unix"),
     SEC("cgroup/getsockname_unix")
  * new `LIBBPF_OPTS_RESET()` utility macro;
  * new `bpf_object__unpin()` function to complement existing
    `bpf_object__pin()`;
  * new API functions for work with ring buffers
  * uprobe SEC matcher extended to allow golang symbols;
  * uprobe support for symbols versioning;

OBS-URL: https://build.opensuse.org/request/show/1128704
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=18
2023-11-26 18:36:38 +00:00
6eaf8b91e2 - update to 1.3.0:
* support for `netfilter` programs is added
    `SEC("netfilter")` is now available
  * API function `bpf_program__attach_netfilter()` is now
    available
  * support for `tcx` BPF programs is added:
  * the following new SEC definitions are now available:
    SEC("tc/egress"), SEC("tc/ingress"), SEC("tcx/egress"),
    SEC("tcx/ingress")
  * the following SEC definitions are now considered legacy:
    SEC("tc"), SEC("action"), SEC("classifier")
  * functions `bpf_prog_attach_opts()` and
    `bpf_prog_query_opts()` are extended to work with `tcx`
    programs, plus two new API functions are added:
  * the following new SEC definitions are now available:
    SEC("uprobe.multi"), SEC("uprobe.multi.s"),
    SEC("uretprobe.multi"), SEC("uretprobe.multi.s")
  * support for section `SEC("usdt.s")` is added for sleepable
    `usdt` programs;
  * support for Unix domain socket cgroup BPF programs is added
    the following new SEC definitions are now available:
     SEC("cgroup/connect_unix"),SEC("cgroup/sendmsg_unix"),
     SEC("cgroup/recvmsg_unix"), SEC("cgroup/getpeername_unix"),
     SEC("cgroup/getsockname_unix")
  * new `LIBBPF_OPTS_RESET()` utility macro;
  * new `bpf_object__unpin()` function to complement existing
    `bpf_object__pin()`;
  * new API functions for work with ring buffers
  * uprobe SEC matcher extended to allow golang symbols;
  * uprobe support for symbols versioning;

OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=35
2023-11-25 10:06:07 +00:00
d8a29056fc Accepting request 1098588 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1098588
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=17
2023-07-15 21:14:59 +00:00
Shung-Hsi Yu
faa738aa13 Accepting request 1098587 from home:shunghsiyu:branches:bpf
- update to v1.2.2:
  * fix a regression in perf tool caused by libbpf resetting its custom
    catch-all SEC() handler on explicit bpf_program__set_type() call
  * fix possible double-free in USDT-related libbpf code, which happens when
    libbpf runs out of space in __bpf_usdt_specs map due to having too many
    unique USDT specs

OBS-URL: https://build.opensuse.org/request/show/1098587
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=33
2023-07-14 05:08:24 +00:00
5d0e3bd99d Accepting request 1084196 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1084196
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=16
2023-05-04 15:09:27 +00:00
Shung-Hsi Yu
494640f937 Accepting request 1083953 from home:dirkmueller:Factory
- update to 1.2.0:
  * completely overhauled "Libbpf overview" landing documentation
    page;
  * support for BPF link-based `struct_ops` programs:
      * `SEC(".struct_ops.link")` annotations;
      * `bpf_map__attach_struct_ops()` attach API;
      * `bpf_link__update_map()` link update API;
  * support sleepable `SEC("struct_ops.s")` programs
  * improved thread-safety of libbpf print callbacks and
    `libbpf_set_print()`
  * improve handling and reporting of missing BPF kfuncs
  * `bpf_{btf,link,map,prog}_get_info_by_fd()` APIs
  * `bpf_xdp_query_opts()` supports fetching XDP/XSK supported
     features;
  * `perf_buffer__new()` allows customizing notification/sampling
    period now;
  * BPF verifier logging improvements:
    * pass-through BPF verifier log level and flags to kernel as
      is
     * support `log_true_size` for getting required log buffer size
       to fit BPF verifier log completely;
     * allow precise control over kprobe/uprobe attach mode: legacy,
       perf-based, link-based.
  * fix legacy kprobe events names sanitization;
  * fix clobbering errno in some cases;
  * fix BPF map's `BPF_F_MMAPABLE` flag sanitization;
  * fix BPF-side USDT support code on s390x architecture;
  * fix `BPF_PROBE_READ{_STR}_INTO()` on s390x architecture;
  * fix kernel version setting for Debian kernels;
  * fix netlink protocol handling in some cases;

OBS-URL: https://build.opensuse.org/request/show/1083953
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=31
2023-05-03 07:35:23 +00:00
6cebcc10c8 Accepting request 1056130 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1056130
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=15
2023-01-06 16:04:57 +00:00
Shung-Hsi Yu
1cd9a09b6d Accepting request 1056129 from home:shunghsiyu:branches:bpf
Remove requirement of linux-glibc-devel >= 5.16 for devel package

They're no longer needed since libbpf v0.7, which includes commit 8404d1396c "libbpf: Define BTF_KIND_* constants in btf.h to avoid compilation errors" that defines the constants that used to be missing.

OBS-URL: https://build.opensuse.org/request/show/1056129
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=29
2023-01-05 07:31:19 +00:00
a2f7b64930 Accepting request 1045707 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1045707
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=14
2022-12-30 10:08:14 +00:00
Shung-Hsi Yu
bfc9e4372b Accepting request 1044164 from home:dirkmueller:Factory
- update to v1.1.0:
  User space-side features and APIs:
  * user-space ring buffer (BPF_MAP_TYPE_USER_RINGBUF) support;
  * new documentation page listing all recognized SEC() definitions;
  * BTF dedup improvements:
  * unambiguous fwd declaration resolution for structs and unions;
  * better handling of some corner cases with identical structs and arrays;
  * mixed enum and enum64 forward declaration resolution logic;
  * bpf_{link,btf,pro,mapg}_get_fd_by_id_opts() and bpf_get_fd_by_id_opts()
    APIs;
  * libbpf supports loading raw BTF for BPF CO-RE from known search paths;
  * support for new cgroup local storage (BPF_MAP_TYPE_CGRP_STORAGE);
  * libbpf will only add BPF_F_MMAPABLE flag for data maps with global
    (i.e., non-static) vars;
  * latest Linux UAPI headers with lots of changes synced into
    include/uapi/linux.
  BPF-side features and APIs;
  * BPF_PROG2() macro added that supports struct-by-value arguments;
  * new BPF helpers:
  * bpf_user_ringbuf_drain();
  * cgrp_storage_get() and cgrp_storage_delete().
  Bug fixes
  * better handling of padding corner cases;
  * btf__align_of() determines packed structs better now;
  * improved handling of enums of non-standard sizes;
  * USDT spec parsing improvements;
  * overflow handling fixes for ringbufs;
  * Makefile fixes to support cross-compilation for 32-bit targets;
  * fix crash if SEC("freplace") programs don't have attach_prog_fd set;
  * better handling of file existence checks when running as non-root with

OBS-URL: https://build.opensuse.org/request/show/1044164
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=27
2022-12-29 09:18:21 +00:00
22457f9aee Accepting request 1034423 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/1034423
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=13
2022-11-09 11:56:06 +00:00
Shung-Hsi Yu
0aa7d66395 Accepting request 1034422 from home:shunghsiyu:branches:bpf
- Fix out-of-bound heap write (boo#1194248 boo#1194249 CVE-2021-45940 CVE-2021-45941)
  + libbpf-Use-elf_getshdrnum-instead-of-e_shnum.patch
- Fix use-after-free in btf_dump_name_dups (boo#1204391 CVE-2022-3534)
  + libbpf-Fix-use-after-free-in-btf_dump_name_dups.patch
- Fix memory leak in parse_usdt_arg() (boo#1204393 CVE-2022-3533)
  + libbpf-Fix-memory-leak-in-parse_usdt_arg.patch
- Fix null pointer dereference in find_prog_by_sec_insn() (boo#1204502 CVE-2022-3606)
  + libbpf-Fix-null-pointer-dereference-in-find_prog_by_.patch

OBS-URL: https://build.opensuse.org/request/show/1034422
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=25
2022-11-08 07:03:42 +00:00
64ca60f312 Accepting request 1010116 from devel:libraries:c_c++
Automatic submission by obs-autosubmit

OBS-URL: https://build.opensuse.org/request/show/1010116
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=12
2022-10-23 14:32:34 +00:00
Shung-Hsi Yu
f56d645a61 Accepting request 1007954 from home:dirkmueller:Factory
- update to 1.0.1:
  * fix inadvertently changed struct bpf_object_open_opts memory layout;
  * fix btf.h header relying on struct enum64 type defined in kernel UAPI headers;
  * fix NULL pointer exception in API btf_dump__dump_type_data;
  * remove struct btf_map_def accidentally left in bpf_helpers.h header.
  * All deprecated APIs and features removed!
  * support for syscall-specific kprobe/kretprobe
    (SEC("ksyscall/<syscall_name>") and SEC("kretsyscall/<syscall_name>"));
  * support for sleepable uprobe BPF programs (SEC("uprobe.s"));
  * support for per-cgroup LSM BPF programs (SEC("lsm_cgroup"));
  * support for new BPF CO-RE relocation TYPE_MATCHES;
  * bpf_prog_load() and bpf_map_create() are now smarter about handling program
    and map name on old kernels (it will be ignored if kernel doesn't support
    names);
  * BTF_KIND_ENUM64 support;
  * increase tracing attachment (kprobe/uprobe/tracepoint) robustness by using
    tracefs or debugfs, whichever is mounted;
  * new APIs for converting BPF enums to their string representation:
  * libbpf_bpf_prog_type_str();
  * libbpf_bpf_map_type_str();
  * libbpf_bpf_link_type_str();
  * libbpf_bpf_attach_type_str();
  * bpf_program__set_autoattach() and bpf_program__autoattach() to allow opting
    out from auto-attaching of BPF program by BPF skeleton;
  * perf_buffer__buffer() API to give access to underlying per-CPU buffer for BPF ringbuf;
  * bpf_obj_get_opts() API for more flexible fetching of BPF kernel objects' information.
- see https://github.com/libbpf/libbpf/releases/tag/v1.0.0 for detailed changelog

OBS-URL: https://build.opensuse.org/request/show/1007954
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=23
2022-10-12 06:10:47 +00:00
e914853d3d Accepting request 992723 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/992723
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=11
2022-08-05 17:50:17 +00:00
Shung-Hsi Yu
ee8f7abbff Accepting request 992588 from home:gmbr3:Active
- Update to release 0.8.1:
  * make shared xsk creation network namespace aware

OBS-URL: https://build.opensuse.org/request/show/992588
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=21
2022-08-04 08:39:49 +00:00
ebf105d929 Accepting request 978029 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/978029
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=10
2022-05-20 15:50:18 +00:00
Shung-Hsi Yu
78537dd4a5 Accepting request 978028 from home:shunghsiyu:branches:bpf
- Update to release 0.8.0
  * New features and APIs:
    - support auto-resolution of binaries and shared libraries from PATH, if necessary;
    - support attaching by function names (only by IP was supported before);
    - support attaching to USDTs (SEC("usdt/...") and
      bpf_program__attach_usdt()) with initially supported architectures:
      x86-64 (amd64); x86 (i386); s390x; ARM64 (aarch64); RISC V (riscv);
    - improved BPF verifier log reporting for CO-RE relocation failures (no
      more obscure "invalid func unknown#195896080" errors);
    - auto-adjust BPF ringbuf size according to host kernel's page size requirements;
    - high-level BPF map APIs: bpf_map__lookup_elem(), bpf_map__update_elem(),
      etc that validate key/value buffer sizes;
    - bpf_link_create() can create all bpf_link-based (including raw_tp,
      fentry/fexit, etc), falling back to bpf_raw_tracepoint_open() on old
      kernels transparently;
    - support opting out from auto-loading BPF programs declaratively with
      SEC("?...");
    - support opting out from auto-creation of declarative BPF maps with
      bpf_map__set_autocreate();
    - support multi-kprobes (SEC("kprobe.multi/...") and
      bpf_program__attach_kprobe_multi_opts());
    - support target-less SEC() programs (e.g., SEC("kprobe"), SEC("tp"), etc);
    - support BPF sub-skeletons for "incomplete" BPF object files (requires
      matching bpftool to generate .subskel.h);
    - BPF cookie support for fentry/fexit/fmod_ret BPF programs
      (bpf_program__attach_trace_opts());
    - support for custom SEC() handlers (libbpf_register_prog_handler()).
  * BPF-side API
    - BPF-side USDT APIs. See new usdt.bpf.h header:
      * BPF_USDT() program wrapper macro; bpf_usdt_arg(), bpf_usdt_arg_cnt(),
      * bpf_usdt_cookie() helpers;
    - new bpf_core_field_offset() CO-RE helper and support
      bpf_core_field_size(type, field) forms;
    - barrier() and barrier_var() macros for improving BPF code generation;
    - __kptr and __kptr_ref tags added;
    - ARC architecture support in bpf_tracing.h header;
    - new BPF helpers:
      * bpf_skb_set_tstamp();
      * bpf_ima_file_hash();
      * bpf_kptr_xchg();
      * bpf_map_lookup_percpu_elem().
  * Bug fixes
    - netlink bug fixes;
    - libbpf.pc fixes to support patch releases properly;
    - BPF_MAP_TYPE_PERF_EVENT_ARRAY map auto-pinning fix;
    - minor CO-RE fixes and improvements for some corner cases;
    - various other small fixes and improvements.

OBS-URL: https://build.opensuse.org/request/show/978028
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=19
2022-05-19 03:34:55 +00:00
274dad0503 Accepting request 961212 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/961212
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=9
2022-03-14 18:35:09 +00:00
d1d6e9e7e9 Accepting request 959865 from home:jengelh:branches:devel:libraries:c_c++
- Python is not used during build; remove it and help break
  a cycle.

OBS-URL: https://build.opensuse.org/request/show/959865
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=17
2022-03-12 10:14:07 +00:00
Michał Rostecki
8c5c35b5f3 Accepting request 960937 from home:jeff_mahoney:branches:devel:libraries:c_c++
- Enable building and packaging of static library.
  Explicitly enable fat LTO objects.

Enabling fat LTO to get successful builds on ppc64.
Now removed commented out removal of rm command.

OBS-URL: https://build.opensuse.org/request/show/960937
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=16
2022-03-11 13:42:38 +00:00
54d9e8090a Accepting request 959732 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/959732
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=8
2022-03-07 18:04:38 +00:00
5149d0519a Accepting request 959375 from home:jengelh:branches:devel:libraries:c_c++
- Update to release 0.7.0

OBS-URL: https://build.opensuse.org/request/show/959375
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=14
2022-03-06 16:26:17 +00:00
Michał Rostecki
c621426241 Accepting request 940907 from home:jengelh:branches:devel:libraries:c_c++
the new libbpf has this hard requirement. Doesn't help factory at this time, but at least it'll be on record.

OBS-URL: https://build.opensuse.org/request/show/940907
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=13
2021-12-17 10:53:35 +00:00
Michał Rostecki
65b929f47a Accepting request 939943 from home:jengelh:branches:devel:libraries:c_c++
- Update to release 0.6.1

OBS-URL: https://build.opensuse.org/request/show/939943
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=12
2021-12-11 23:40:33 +00:00
9bb543ddd2 Accepting request 921812 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/921812
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=7
2021-09-30 21:43:03 +00:00
Michał Rostecki
9146349710 Accepting request 921765 from home:shunghsiyu:branches:devel:libraries:c_c++
- Update to 0.5.0:
  + New features and user-space APIs:
    - libbpf_set_strict_mode() allowing to opt-in into backwards incompatible libbpf-1.0 changes. See "Libbpf: the road to 1.0" and "Libbpf 1.0 migration guide" for more details.
    - streamlined error reporting for low-level APIs, high-level error-returning APIs, and pointer-returning APIs (as a libbpf-1.0 opt-in);
    - "Light" BPF skeleton support;
    - BPF_PROG_TYPE_SYSCALL support;
    - BPF perf link support for kprobe, uprobe, tracepoint, and perf_event BPF programs;
    - BPF cookie support for kprobe, uprobe, tracepoint, and perf_event BPF programs through bpf_program__attach_[ku]probe_opts() APIs;
    - allow to specify ref_ctr_off for USDT semaphores through bpf_program__attach_uprobe_opts() API;
    - btf_custom_path support in bpf_object_open_opts, allowing to specify custom BTF for CO-RE relocations;
    - sk_reuseport/migrate program type support;
    - btf_dump__dump_type_data() API, allowing to dump binary data according to BTF type description;
    - btf__load_into_kernel() and btf__load_from_kernel_by_id(), and split BTF variants of them;
    - btf__load_vmlinux_btf() and btf__load_module_btf() APIs;
    - bpf_map__initial_value() API to get initial value of mmap-ed BPF maps;
    - bpf_map_lookup_and_delete_elem_flags() API.
  + BPF-side APIs and features:
    - support for weak typed __ksym externs;
    - BPF timer helpers: bpf_timer_init(), bpf_timer_set_callback(), bpf_timer_start(), bpf_timer_cancel();
    - bpf_get_attach_cookie() helper to get BPF cookie from BPF program side;
    - bpf_get_func_ip() helper;
    - bpf_sys_bpf() helper;
    - bpf_task_pt_regs() helper;
    - bpf_btf_find_by_name_kind() helper;
    - usability improvements for bpf_tracing.h when target architecture is missing.
  + Bug fixes and compatibility improvements:
    - improve BPF support detection on old Red Hat kernels with backported BPF patches;
    - improvements for LTO builds with GCC 10+;
    - pass NLM_F_EXCL when creating TC qdisc;
    - better support of BPF map reuse on old kernels;
    - fix the bug resulting in sometimes closing FD 0, which wasn't created and owned by libbpf itself.
- Remove patches merged upstream
  + libdir.patch
  + libbpf-Fix-build-with-latest-gcc-binutils-with-LTO.patch

OBS-URL: https://build.opensuse.org/request/show/921765
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=11
2021-09-27 13:57:21 +00:00
b6c7ae907e Accepting request 920620 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/920620
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=6
2021-09-24 22:35:08 +00:00
bbb037c275 Accepting request 914518 from home:michals
- Fix LTO build (bsc#1188749).
  + libbpf-Fix-build-with-latest-gcc-binutils-with-LTO.patch

OBS-URL: https://build.opensuse.org/request/show/914518
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=10
2021-09-21 09:21:49 +00:00
6fb9151c6e Accepting request 913292 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/913292
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=5
2021-08-24 08:54:16 +00:00
Michał Rostecki
1d83152640 Accepting request 913283 from home:michals
- Depend on new enough Linux headers.

OBS-URL: https://build.opensuse.org/request/show/913283
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=9
2021-08-20 09:33:03 +00:00
Richard Brown
b7d4d99d99 Accepting request 910804 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/910804
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=4
2021-08-18 06:55:06 +00:00
d9ed76e39e Accepting request 909759 from home:gmbr3:Active
- Create libbpf0-32bit needed by libdwarves1-32bit

OBS-URL: https://build.opensuse.org/request/show/909759
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=8
2021-08-09 08:49:10 +00:00
62dc279025 Accepting request 907038 from devel:libraries:c_c++
OBS-URL: https://build.opensuse.org/request/show/907038
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=3
2021-07-21 17:05:42 +00:00
Michał Rostecki
c8ea07602b Accepting request 906964 from home:michals
- libbpf is now a separate project, stop building from the kernel
  (bsc#1188419 jsc#SLE-17288 jsc#SLE-18805).
- Fix LIBSUBDIR
  + libdir.patch

OBS-URL: https://build.opensuse.org/request/show/906964
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=7
2021-07-19 07:25:34 +00:00
29bb141b34 Accepting request 812756 from devel:libraries:c_c++
- Add python3 as a build dependency. (forwarded request 812755 from mrostecki)

OBS-URL: https://build.opensuse.org/request/show/812756
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=2
2020-06-09 22:48:45 +00:00
Michał Rostecki
cfdc4dccbe Accepting request 812755 from home:mrostecki:branches:devel:libraries:c_c++
- Add python3 as a build dependency.

OBS-URL: https://build.opensuse.org/request/show/812755
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=5
2020-06-08 23:58:57 +00:00
2c0205106e Accepting request 772922 from devel:libraries:c_c++
libbpf package with a shared library. It's needed by bpftrace. After this SR gets accepted, I will also use it for building bpftool.

OBS-URL: https://build.opensuse.org/request/show/772922
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libbpf?expand=0&rev=1
2020-02-10 20:55:53 +00:00
Michał Rostecki
d17435cca4 Accepting request 772910 from home:mrostecki:branches:devel:libraries:c_c++
- Build libbpf from kernel sources, not from github sources, for
  consistency with bpftool package.

OBS-URL: https://build.opensuse.org/request/show/772910
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=3
2020-02-10 15:01:06 +00:00
Michał Rostecki
a53a02a589 Accepting request 761634 from home:scarabeus_iv:branches:devel:libraries:c_c++
Please sent this package to tumbleweed too.

- Reflect SUSE CFLAGS
- Do not bother with obscpio if we are fetching direct releases
- Remove patch 0001-makefile-Fix-install-target.patch seems
  to build/install without it just fine
- Update to 0.0.6:
  + New features
    - new extensible bpf_object__open_{file,mem} APIs and
      DECLARE_LIBBPF_OPTS() macro to go with them
    - bpf_helpers.h, bpf_endian.h, and bpf_tracing.h are now
      distributed with libbpf
    - BPF CO-RE: added field size, field existence, and bitfield
      relocation support
    - BPF CO-RE: BPF_CORE_READ(), bpf_core_field_exists(),
      bpf_core_field_size() and other BPF CO-RE related helpers
      available through bpf_core_read.h header
    - bpf_object__open() API now auto-detects program type from
      its section name
    - BPF_PROG_TRACING programs support (incuding BTF-typed raw
      tracepoints, fentry/fexit programs)
    - mmap() support for BPF global variables
    - declarative map pinning support added
    - probe_read_{user,kernel}[_str]() BPF helpers added
    - bpf_get_link_xdp_info() function to get more XDP information
      added
    - a bunch of other AF_XDP changes
  + Usability improvements
    - no need for int version SEC('version') = 1; anymore
    - raw_tp/tp and uprobe/uretprobe section prefixes added
    - new bpf_program__get_{type,expected_attach_type} getters
    - preserve error code on program load failure

OBS-URL: https://build.opensuse.org/request/show/761634
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=2
2020-01-09 11:37:19 +00:00
678c0dae57 Accepting request 741294 from home:mrostecki
Initial release

OBS-URL: https://build.opensuse.org/request/show/741294
OBS-URL: https://build.opensuse.org/package/show/devel:libraries:c_c++/libbpf?expand=0&rev=1
2019-10-20 11:27:25 +00:00
6 changed files with 0 additions and 82 deletions

View File

@@ -1,67 +0,0 @@
From 1f7c2f78d74e239ee4fce03f9a858062ae3d5512 Mon Sep 17 00:00:00 2001
From: Alan Maguire <alan.maguire@oracle.com>
Date: Tue, 29 Apr 2025 17:10:42 +0100
Subject: [PATCH 1/1] libbpf: Add identical pointer detection to
btf_dedup_is_equiv()
Recently as a side-effect of
commit ac053946f5c4 ("compiler.h: introduce TYPEOF_UNQUAL() macro")
issues were observed in deduplication between modules and kernel BTF
such that a large number of kernel types were not deduplicated so
were found in module BTF (task_struct, bpf_prog etc). The root cause
appeared to be a failure to dedup struct types, specifically those
with members that were pointers with __percpu annotations.
The issue in dedup is at the point that we are deduplicating structures,
we have not yet deduplicated reference types like pointers. If multiple
copies of a pointer point at the same (deduplicated) integer as in this
case, we do not see them as identical. Special handling already exists
to deal with structures and arrays, so add pointer handling here too.
Reported-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: Alan Maguire <alan.maguire@oracle.com>
Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Link: https://lore.kernel.org/bpf/20250429161042.2069678-1-alan.maguire@oracle.com
---
src/btf.c | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/src/btf.c b/src/btf.c
index e9673c0..c7df63d 100644
--- a/src/btf.c
+++ b/src/btf.c
@@ -4337,6 +4337,19 @@ static bool btf_dedup_identical_structs(struct btf_dedup *d, __u32 id1, __u32 id
return true;
}
+static bool btf_dedup_identical_ptrs(struct btf_dedup *d, __u32 id1, __u32 id2)
+{
+ struct btf_type *t1, *t2;
+
+ t1 = btf_type_by_id(d->btf, id1);
+ t2 = btf_type_by_id(d->btf, id2);
+
+ if (!btf_is_ptr(t1) || !btf_is_ptr(t2))
+ return false;
+
+ return t1->type == t2->type;
+}
+
/*
* Check equivalence of BTF type graph formed by candidate struct/union (we'll
* call it "candidate graph" in this description for brevity) to a type graph
@@ -4469,6 +4482,9 @@ static int btf_dedup_is_equiv(struct btf_dedup *d, __u32 cand_id,
*/
if (btf_dedup_identical_structs(d, hypot_type_id, cand_id))
return 1;
+ /* A similar case is again observed for PTRs. */
+ if (btf_dedup_identical_ptrs(d, hypot_type_id, cand_id))
+ return 1;
return 0;
}
--
2.49.0

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d8be49641dd4c5caa27986a8291907176e3b6fd6fe650e4fee5b45f8093fc935
size 1016055

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:e225c1fe694b9540271b1f2f15eb882c21c34511ba7b8835b0a13003b3ebde8c
size 1016457

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:d4cf3ee697d9bd959ad3c0f5c6757370a2559e54448761271e15a23c31c1082e
size 1016372

BIN
libbpf-1.5.0.tar.gz (Stored with Git LFS)

Binary file not shown.

BIN
libbpf-1.5.1.tar.gz (Stored with Git LFS)

Binary file not shown.