Compare commits

3 Commits
1.1 ... main

4 changed files with 191 additions and 5 deletions

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

Binary file not shown.

BIN
libbpf-1.6.1.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

View File

@@ -1,3 +1,189 @@
-------------------------------------------------------------------
Mon Jul 21 03:31:14 UTC 2025 - Shung-Hsi Yu <shung-hsi.yu@suse.com>
- update to 1.6.0:
* add more control over BPF object lifetime with new preparation step
(bpf_object__prepare() API)
* libbpf will report symbolic error code (e.g., "-EINVAL") in addition to
human-readable error description
* bpf_prog_stream_read() API
* BPF token support when attaching BPF trampoline-based BPF programs in
bpf_program__set_attach_target()
* BPF token support for BPF_BTF_GET_FD_BY_ID command
* support multi-uprobe session (SEC("uprobe.session")) BPF programs
* support unique_match option for multi-kprobe attachment
* support creating and destroying qdisk with BPF_TC_QDISC flag;
* bpf_program__attach_cgroup_opts() which enables more precise cgroup-based
attachment ordering
* automatically take advantage of memory-mappable kernel BTF
(/sys/kernel/btf/vmlinux), if supported
* emit_strings option for BTF dumper API, improving string-like data printing
* add BPF program's func and line info accessors
* BPF linker supports linking ELF object files coming from memory buffer and
referenced by FD, in addition to file path-based APIs;
* small improvements to BTF dedup to handle rare quirky corner cases produces
by some compilers
* add likely() and unlikely() convenience macros;
* __arg_untrusted annotation for BPF global subprog arguments;
* bpf_stream_printk() macro for working with BPF streams;
* bpf_usdt_arg_size() API
- update to 1.6.0:
* fixing a possible crash when handling BPF arena global variable relocations
- drop 0001-libbpf-Add-identical-pointer-detection-to-btf_dedup_.patch, which
is now included
-------------------------------------------------------------------
Thu Jun 5 14:34:05 UTC 2025 - Shung-Hsi Yu <shung-hsi.yu@suse.com>
- Workaround kernel module size increase due to BTF deduplication
issue since the introduction of TYPEOF_UNQUAL (poo#183503 bsc#1244135)
* add 0001-libbpf-Add-identical-pointer-detection-to-btf_dedup_.patch
-------------------------------------------------------------------
Tue May 20 11:29:45 UTC 2025 - Fredrik Lönnegren <fredrik.lonnegren@suse.com>
- update to 1.5.1:
* Patch release with a single backported change that improves compatibility
story of older versions of libbpf-cargo.
https://github.com/libbpf/libbpf/commit/
453601a65a6ebcf523b009585b49ce0ad0adeff1
-------------------------------------------------------------------
Wed Dec 18 09:55:26 UTC 2024 - Shung-Hsi Yu <shung-hsi.yu@suse.com>
- Drop libbpf-Fix-NULL-pointer-dereference-in-bpf_object__c.patch
* included since 1.4.0
-------------------------------------------------------------------
Wed Oct 30 15:59:44 UTC 2024 - Fredrik Lönnegren <fredrik.lonnegren@suse.com>
- update to 1.5.0:
* libbpf can now open (but not load!) BPF objects of non-native endianness,
enabling cross-architecture support for BPF skeleton generation and BPF
object introspection
* BPF skeleton will now auto-attach SEC(".struct_ops") maps as part of
<skeleton>__attach() call
* BPF kprobe session programs support (SEC("kprobe.session"))
* allow specifying kernel module name for fentry/fexit BPF programs
(SEC(fentry/module:function)
* libbpf recognizes LIBBPF_LOG_LEVEL environment variable, which can be used
to set default log verboseness
* BPF ringbuf APIs that limit maximum number of consumed records at a time
(ring_buffer__consume_n(), ring__consume_n())
* distilled BTF support (btf__distill_base(), btf__relocate())
* BPF link-based attachment of BPF_PROG_TYPE_SOCKMAP programs
(bpf_program__attach_sockmap())
* bpf_object__token_fd() API to fetch BPF token FD of a BPF object, if any
* fixes for fetching syscall arguments on arm64, s390x, risc-v architectures
* better GCC-BPF source code compatibility
* __bpf_fastcall support for a few BPF helpers
* __uptr annotation definition added to bpf/bpf_helpers.h API header
* fixes and improvements around handling missing and nulled out struct_ops
programs
* fixed mmap()-ing logic for global data, fixing interop between generic
bpf_object__open() APIs and BPF subskeletons
* BPF skeleton backwards compatibility handling fixes
* handle LTO-produced *.llvm.<hash> symbols better
* feature detection fixes in the presence of BPF token inside user namespace
* older kernels have broken PID filtering logic for multi-uprobes, libbpf now
detects this and avoids the use of multi-uprobes for USDTs
* fix accidental drop of FD_CLOEXEC flag during BPF map reuse
* few BTF dumper formatting fixes
* a few more small fixes all around.
-------------------------------------------------------------------
Wed Oct 30 15:29:42 UTC 2024 - Fredrik Lönnegren <fredrik.lonnegren@suse.com>
- update to 1.4.7:
* fix interop issues between generic bpf_object__open() APIs and BPF
subskeleton w.r.t. global data handling
* speed up BTF sanity checks by skipping already validated base BTF
* fix legacy treatment of non-SEC()-annotated subprogram as entry BPF program
in some cases
-------------------------------------------------------------------
Wed Sep 4 08:44:47 UTC 2024 - Fredrik Lönnegren <fredrik.lonnegren@suse.com>
- update to 1.4.6:
* BPF skeleton forward compatibility fix (f6f2402);
* BTF endianness inheritance bug fix (fe28fae).
-------------------------------------------------------------------
Thu Jul 18 15:56:27 UTC 2024 - Dirk Müller <dmueller@suse.com>
- 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).
-------------------------------------------------------------------
Tue Jun 4 06:10:48 UTC 2024 - Shung-Hsi Yu <shung-hsi.yu@suse.com>
- update to 1.4.3:
* Fix libbpf unintentionally dropping FD_CLOEXEC flag when (internally)
duping FDs
-------------------------------------------------------------------
Tue May 21 07:07:12 UTC 2024 - Shung-Hsi Yu <shung-hsi.yu@suse.com>
- Fix null pointer dereference in bpf_object__collect_prog_relos()
(bsc#1221101)
* Add libbpf-Fix-NULL-pointer-dereference-in-bpf_object__c.patch
-------------------------------------------------------------------
Sat May 11 07:03:51 UTC 2024 - Fredrik Lönnegren <fredrik.lonnegren@suse.com>
- update to 1.4.2:
* Another struct_ops-focused bug fix release. It addresses a few more corner
cases when dealing with SEC("struct_ops") programs.
* It also improves error messaging around common use case of declaring
struct_ops BPF program and not referencing it from SEC(".struct_ops")
variable (backed by struct_ops BPF map).
* This release should improve overall experience of using BPF struct_ops
functionality.
-------------------------------------------------------------------
Thu May 2 08:19:03 UTC 2024 - Fredrik Lönnegren <fredrik.lonnegren@suse.com>
- update to 1.4.1:
* Bug fix release fixing logic around determining whether to autoload
SEC("struct_ops") programs in cases when old kernel doesn't support some
optional callbacks and user reset them to NULL from BPF skeleton.
-------------------------------------------------------------------
Wed Apr 3 10:50:11 UTC 2024 - Shung-Hsi Yu <shung-hsi.yu@suse.com>
- update to 1.4.0:
* support for BPF token throughout low-level and high-level APIs
(see also LIBBPF_BPF_TOKEN_PATH envvar)
* struct_ops functionality around handling multi-kernel
compatibility using BPF CO-RE principles and approaches
* BPF arena map support
* support __arena tagged global variables, which are automatically
put into BPF arena map
* BPF cookie support for raw tracepoint BPF programs in attach APIs
loaded or created, respectively
* add SEC("sk_skb/verdict") support
* support global subprog argument tagging for for kprobe/uprobe,
and perf_event BPF program with newly added __arg_ctx,
__arg_nonnull, __arg_nullable, __arg_trusted, and __arg_arena
annotations
* add bpf_core_cast() macro, improving ergonomics of
bpf_rdonly_cast() BPF helper
* __long() macro added for specifying 64-bit values when declaring
BTF-defined maps
* better GCC-BPF support in BPF CO-RE macros in bpf_core_read.h header
* show specific error messages when attempting to
use struct bpf_program/bpf_map instances there were not loaded or
created
* fix inner map's max_entries setting logic
* btf_ext__raw_data() and btf__new_split() APIs are added back
* ignore DWARF sections in BPF linker sanity checks, improving
handling of some corner cases
* fix potential NULL dereference when handling corrupted ELF files.
-------------------------------------------------------------------
Sat Nov 25 09:45:41 UTC 2023 - Dirk Müller <dmueller@suse.com>

View File

@@ -1,7 +1,7 @@
#
# spec file for package libbpf
#
# Copyright (c) 2023 SUSE LLC
# Copyright (c) 2025 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -19,7 +19,7 @@
%define sover_major 1
%define libname libbpf%{sover_major}
Name: libbpf
Version: 1.3.0
Version: 1.6.1
Release: 0
Summary: C library for managing eBPF programs and maps
License: LGPL-2.1-only