summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTony Ambardar2024-02-28 23:04:57 +0000
committerChristian Marangi2024-06-13 12:16:33 +0000
commit546559587f52628fc1e644ee8891f904601a9044 (patch)
treed044ae61671d869d95b3c60485e767643f8f4b79
parentf97da2c61ad06a83c2fa23001459809005f8a721 (diff)
downloadopenwrt-546559587f52628fc1e644ee8891f904601a9044.tar.gz
tools/dwarves: update to v1.27
Update to the latest upstream version and add a patch that enables pahole reproducible builds if SOURCE_DATE_EPOCH is defined in the environment. This patch helps avoid BTF-related module loading problems with packages built separately from the kernel such as mac80211 or kselftests-bpf, e.g.: [ 16.858856] BPF: type_id=1185 bits_offset=0 [ 16.859099] BPF: [ 16.859199] BPF: Invalid name [ 16.859352] BPF: [ 16.859612] failed to validate module [cfg80211] BTF: -22 [ 17.015178] PPP generic driver version 2.4.2 [ 17.052703] NET: Registered PF_PPPOX protocol family [ 17.348722] BPF: type_id=1185 bits_offset=0 [ 17.348912] BPF: [ 17.348996] BPF: Invalid name [ 17.349106] BPF: [ 17.349220] failed to validate module [cfg80211] BTF: -22 [ 17.472070] kmodloader: 3 modules could not be probed [ 17.473133] kmodloader: - cfg80211 - 0 [ 17.473762] kmodloader: dependency not loaded cfg80211 [ 17.474421] kmodloader: - mac80211 - 1 [ 17.474988] kmodloader: dependency not loaded mac80211 [ 17.475632] kmodloader: dependency not loaded cfg80211 [ 17.476263] kmodloader: - mac80211_hwsim - 2 root@OpenWrt:/usr/libexec/kselftests-bpf# insmod bpf_testmod.ko [ 4735.776792] missing module BTF, cannot register kfuncs [ 4735.777371] missing module BTF, cannot register kfuncs [ 4735.777955] missing module BTF, cannot register kfuncs [ 4735.778452] missing module BTF, cannot register kfuncs Release Notes: https://lore.kernel.org/bpf/ZmjBHWw-Q5hKBiwA@x1/ Signed-off-by: Tony Ambardar <itugrok@yahoo.com> Link: https://github.com/openwrt/openwrt/pull/15697 Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
-rw-r--r--tools/dwarves/Makefile4
-rw-r--r--tools/dwarves/patches/100-reproducible-builds.patch12
2 files changed, 14 insertions, 2 deletions
diff --git a/tools/dwarves/Makefile b/tools/dwarves/Makefile
index 16dc765f58..bcb16dd3da 100644
--- a/tools/dwarves/Makefile
+++ b/tools/dwarves/Makefile
@@ -3,12 +3,12 @@
include $(TOPDIR)/rules.mk
PKG_NAME:=dwarves
-PKG_VERSION:=1.26
+PKG_VERSION:=1.27
PKG_RELEASE:=1
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=https://fedorapeople.org/~acme/dwarves/
-PKG_HASH:=1d8c9a1c2d42e06cc121a70a39c4f621fd28f15c476ed1b7c7b226f41fdd32df
+PKG_HASH:=ef7f21f1c6016896d03a01f05cab225151f9068e19cc8cddc6e754b2b5cbe279
PKG_MAINTAINER:=Tony Ambardar <itugrok@yahoo.com>
PKG_LICENSE:=GPL-2.0-only
diff --git a/tools/dwarves/patches/100-reproducible-builds.patch b/tools/dwarves/patches/100-reproducible-builds.patch
new file mode 100644
index 0000000000..15bddd5645
--- /dev/null
+++ b/tools/dwarves/patches/100-reproducible-builds.patch
@@ -0,0 +1,12 @@
+--- a/pahole.c
++++ b/pahole.c
+@@ -3723,6 +3723,9 @@ int main(int argc, char *argv[])
+ goto out;
+ }
+
++ if (getenv("SOURCE_DATE_EPOCH") || getenv("KBUILD_BUILD_TIMESTAMP"))
++ conf_load.reproducible_build = true;
++
+ if (dwarves__init()) {
+ fputs("pahole: insufficient memory\n", stderr);
+ goto out;