summarylogtreecommitdiffstats
diff options
context:
space:
mode:
authorJiri Pospisil2024-05-16 10:41:41 +0000
committerJiri Pospisil2024-05-16 10:41:41 +0000
commit42c1aa4c492c398ace2f834e488064307f750e3c (patch)
tree3de90be818e7402a9174f91b23c93ba11178711a
parentb5a9da354c2a3bde837bacdb8efa77e136fb2420 (diff)
downloadaur-bpftool-bin.tar.gz
v7.4.0
-rw-r--r--.SRCINFO16
-rw-r--r--.gitignore1
-rw-r--r--CHANGELOG70
-rw-r--r--PKGBUILD16
4 files changed, 86 insertions, 17 deletions
diff --git a/.SRCINFO b/.SRCINFO
index 0fb18544549c..b416772cefff 100644
--- a/.SRCINFO
+++ b/.SRCINFO
@@ -1,20 +1,20 @@
pkgbase = bpftool-bin
pkgdesc = bpftool is a tool for inspection and simple manipulation of eBPF programs and maps
- pkgver = 7.3.0
+ pkgver = 7.4.0
pkgrel = 1
url = https://github.com/libbpf/bpftool
changelog = CHANGELOG
arch = x86_64
arch = aarch64
- license = GPL2
+ license = GPL-2.0-only
makedepends = python-docutils
provides = bpftool
conflicts = bpftool
- source = https://github.com/libbpf/bpftool/archive/refs/tags/v7.3.0.tar.gz
- b2sums = 653ecbe71c35b59fbea347771a714158bf914335d419c40bffe69d18b2cbb07a9f0654fb97d49755e543d6a8c0b3a7f0c9123a170f6e492da8d5b3f45b4afc0a
- source_x86_64 = https://github.com/libbpf/bpftool/releases/download/v7.3.0/bpftool-v7.3.0-amd64.tar.gz
- b2sums_x86_64 = 5a7da1c466974844ae91f1bd25258708bb62169f924a73751f4467fb51f6a46c73ac65d72b54c5ad0f9236c16235f44736daf356da4cdf93ee71dde1bb634792
- source_aarch64 = https://github.com/libbpf/bpftool/releases/download/v7.3.0/bpftool-v7.3.0-arm64.tar.gz
- b2sums_aarch64 = 1c30c45fe3b12460d9c255520946d55a60741f54c4c4b0147f7a63e460ec542d656651566354387be5c87982f103253bf471b671cba90751cd28f78a23e5ed28
+ source = https://github.com/libbpf/bpftool/archive/refs/tags/v7.4.0.tar.gz
+ b2sums = ae7b6bc6cb742712981ba8972bcecccc63d440b2a77c5a14f91ba5106c013774313d65fd3f42b843ba4027ab17cf9d44d256270f7f8ad11907714f16f3149078
+ source_x86_64 = https://github.com/libbpf/bpftool/releases/download/v7.4.0/bpftool-v7.4.0-amd64.tar.gz
+ b2sums_x86_64 = b4dff22034220336363faa30c7792b104e7bb6ead860510503d2c234f0ec98e099c2fdae2738956990100aa4898e63ce3a420d46aaa0aefb879234d8723a51cb
+ source_aarch64 = https://github.com/libbpf/bpftool/releases/download/v7.4.0/bpftool-v7.4.0-arm64.tar.gz
+ b2sums_aarch64 = 302a8d7caaae9d0ea850e455e99f62a9c3c0c7f60d90f2797422fd10b7631ff7588595950c59ecf5761510a3f7b447c072ed8224dde485d54e7f0bec937fb8f4
pkgname = bpftool-bin
diff --git a/.gitignore b/.gitignore
index 62399afa57c6..d9ed1f81f9b9 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
*.tar.*
+*.log
src/
pkg/
diff --git a/CHANGELOG b/CHANGELOG
index f4f901e2fd05..63af22f087da 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,3 +1,73 @@
+# Changes in version 7.4.0:
+
+### Breaking change
+
+- Kernel configuration options related to bpfilter (namely: CONFIG_BPFILTER and
+CONFIG_BPFILTER_UMH) are no longer checked with bpftool feature probe, following
+bpfilter's removal in recent kernels. (e725e62)
+
+### New features
+
+The information displayed for BPF links (bpftool link list) keeps getting enriched:
+
+- Display uprobe_multi links. (dd0b761)
+- Display cookie for perf event link probes. (25df69b)
+- Display cookie for kprobe_multi links. (4263cc0)
+
+Other features:
+
+- Generate shadow variables for struct_ops maps in program skeletons. Shadow types
+allow skeleton users to easily access the fields of struct_ops maps at runtime.
+An example program using shadow types is also added to the bpftool-gen manual
+page. (fc0ad76, 579d6b0)
+
+- Mark orphaned programs as such when listing programs. Orphaned programs are
+programs removed in IRQ context, on their way to be unloaded from kernel memory,
+but possibly passing through audit hooks. Such programs would only be listed on
+recent kernels. (5b0a3a4)
+
+- Recognize arena map types (a09e203) and global variables (73a2c7e), and support
+the addr_space_cast instruction in the disassembler for translated programs,
+used for working with arena maps (c305ebf).
+
+### Bug fixes
+
+- In the mirror repository, fix the detection of clang-bpf-co-re (for skeletons
+support) for some clang versions. (515739f)
+
+- Displaying PIDs for processes holding references to BPF links when listing
+links with bpftool link list on older kernels broke in v7.3.0, because the
+internal program pid_iter would fail to load. Fix the program to ensure that
+pid_iter loads and PIDs are displayed. (3214350)
+
+- When loading the internal pid_iter program for displaying PIDs of processes
+holding file descriptors to BPF programs, we would suppress the logs from
+libbpf. Display them when running bpftool in debug mode (--debug). (0cb4aaf)
+
+### Other internal changes
+
+- Silence build warning from calloc() appearing with recent versions of GCC
+(supporting -Wcalloc-transposed-args). (c4cc180)
+
+- Use POSIX's version of basename() for more portability. (6e0d7d0)
+
+- Improve bpftool's bootstrap build by skipping compilation for some unnecessary
+object files (3dc1ac6) and passing more relevant values in HOST_CFLAGS and
+HOST_LDFLAGS (c1adf4a). This also results in more accurate results when listing
+features with bpftool version for the boostrap bpftool binary.
+
+### Known bugs
+
+- Command bpftool cgroup tree may be broken when running with kernels under
+v6.1. (#41)
+
+- When loading multiple programs with bpftool prog loadall and passing a
+directory name for pinning them that is not located under an existing bpffs,
+bpftool attempts to mount a new bpffs on the parent of the directory rather than
+on the directory itself, possibly leading to a portion of the file arborescence
+to be unexpectedly hidden by the mount. (#100)
+
+
# Changes in version 7.3.0:
### Deprecation
diff --git a/PKGBUILD b/PKGBUILD
index 6a58df20587e..a4f06dceb5fd 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -1,6 +1,7 @@
# Maintainer: Jiri Pospisil <jiri@jpospisil.com>
+
pkgname=bpftool-bin
-pkgver=7.3.0
+pkgver=7.4.0
pkgrel=1
pkgdesc='bpftool is a tool for inspection and simple manipulation of eBPF programs and maps'
url='https://github.com/libbpf/bpftool'
@@ -11,22 +12,19 @@ arch=('x86_64' 'aarch64')
makedepends=('python-docutils')
provides=('bpftool')
conflicts=('bpftool')
-license=('GPL2')
-changelog=CHANGELOG
-b2sums=('653ecbe71c35b59fbea347771a714158bf914335d419c40bffe69d18b2cbb07a9f0654fb97d49755e543d6a8c0b3a7f0c9123a170f6e492da8d5b3f45b4afc0a')
-b2sums_x86_64=('5a7da1c466974844ae91f1bd25258708bb62169f924a73751f4467fb51f6a46c73ac65d72b54c5ad0f9236c16235f44736daf356da4cdf93ee71dde1bb634792')
-b2sums_aarch64=('1c30c45fe3b12460d9c255520946d55a60741f54c4c4b0147f7a63e460ec542d656651566354387be5c87982f103253bf471b671cba90751cd28f78a23e5ed28')
+license=('GPL-2.0-only')
+changelog='CHANGELOG'
+b2sums=('ae7b6bc6cb742712981ba8972bcecccc63d440b2a77c5a14f91ba5106c013774313d65fd3f42b843ba4027ab17cf9d44d256270f7f8ad11907714f16f3149078')
+b2sums_x86_64=('b4dff22034220336363faa30c7792b104e7bb6ead860510503d2c234f0ec98e099c2fdae2738956990100aa4898e63ce3a420d46aaa0aefb879234d8723a51cb')
+b2sums_aarch64=('302a8d7caaae9d0ea850e455e99f62a9c3c0c7f60d90f2797422fd10b7631ff7588595950c59ecf5761510a3f7b447c072ed8224dde485d54e7f0bec937fb8f4')
package() {
- # Copy the main binary
cd "$srcdir"
install -Dm755 bpftool "$pkgdir/usr/bin/bpftool"
- # Bash completions
cd "bpftool-$pkgver"
install -Dm644 bash-completion/bpftool "$pkgdir/usr/share/bash-completion/completions/bpftool"
- # Man pages
cd "docs"
make
install -Dm644 -t "$pkgdir/usr/share/man/man8" *.8