From: Kefu Chai <k.chai@proxmox.com>
To: pve-devel@lists.proxmox.com
Subject: [pve-devel] [PATCH ceph 3/4 v5] exclude ceph-osd-crimson when running dwz
Date: Fri, 23 Jan 2026 15:56:19 +0800 [thread overview]
Message-ID: <20260123075619.2731724-8-k.chai@proxmox.com> (raw)
In-Reply-To: <DFUZ6FOPC7QH.ZJF854WPORYV@proxmox.com>
The dwz tool tries to deduplicate debug information across binaries,
but it has limits on the number of DWARF DIE (Debug Information Entries)
it can handle. Large C++ binaries especially those using templates
heavilily (like Ceph's crimson components), often exceed these limits.
When building packages with DWZ enabled, the debian packging fails with:
```
dh_dwz: error: Aborting due to earlier error
```
So let's make ceph-crimson-osd an exception when running dwz. This
change will not backported to tentacle as tentacle does not build
crimson by default.
Signed-off-by: Kefu Chai <k.chai@proxmox.com>
---
...lude-ceph-osd-crimson-from-dwz-compr.patch | 52 +++++++++++++++++++
patches/series | 1 +
2 files changed, 53 insertions(+)
create mode 100644 patches/0053-debian-rules-exclude-ceph-osd-crimson-from-dwz-compr.patch
diff --git a/patches/0053-debian-rules-exclude-ceph-osd-crimson-from-dwz-compr.patch b/patches/0053-debian-rules-exclude-ceph-osd-crimson-from-dwz-compr.patch
new file mode 100644
index 00000000000..c5f477adb30
--- /dev/null
+++ b/patches/0053-debian-rules-exclude-ceph-osd-crimson-from-dwz-compr.patch
@@ -0,0 +1,52 @@
+From 126f3623e3c36bf0bd233b01fd452aeec0415d89 Mon Sep 17 00:00:00 2001
+From: Kefu Chai <k.chai@proxmox.com>
+Date: Fri, 23 Jan 2026 15:04:47 +0800
+Subject: [PATCH] debian/rules: exclude ceph-osd-crimson from dwz compression
+
+When building with DWZ enabled, the debian packaging fails with:
+```
+ dh_dwz: error: Aborting due to earlier error
+```
+Running the dwz command manually reveals the root cause:
+```
+ $ dwz -mdebian/ceph-osd-crimson/usr/lib/debug/.dwz/x86_64-linux-gnu/ceph-osd-crimson.debug \
+ -M/usr/lib/debug/.dwz/x86_64-linux-gnu/ceph-osd-crimson.debug -- \
+ debian/ceph-osd-crimson/usr/bin/ceph-osd-crimson \
+ debian/ceph-osd-crimson/usr/bin/crimson-store-nbd
+ dwz: debian/ceph-osd-crimson/usr/bin/ceph-osd-crimson: Too many DIEs, not optimizing
+ dwz: Too few files for multifile optimization
+```
+The dwz tool has a limit on the number of DWARF DIEs (Debug Information
+Entries) it can process. The ceph-osd-crimson binary, being a large C++
+executable with extensive template usage, exceeds this limit, causing
+dwz to exit with status 1 and fail the build.
+
+This change excludes only ceph-osd-crimson from dwz processing using
+the -X flag, allowing other binaries in the package to still benefit
+from DWARF compression while avoiding the build failure.
+
+Please note, we always disable DWZ in ceph-build's ceph-dev-pipeline.
+
+Signed-off-by: Kefu Chai <k.chai@proxmox.com>
+---
+ debian/rules | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/debian/rules b/debian/rules
+index 4d31ffd069f..9082c9c4dd2 100755
+--- a/debian/rules
++++ b/debian/rules
+@@ -53,6 +53,10 @@ endif
+
+ ifeq ($(DWZ), false)
+ override_dh_dwz:
++else
++override_dh_dwz:
++ # Exclude ceph-osd-crimson due to excessive debug info (too many DIEs)
++ dh_dwz -Xceph-osd-crimson
+ endif
+
+ # for python3-${pkg} packages
+--
+2.47.3
+
diff --git a/patches/series b/patches/series
index 53e0e6b83ca..874bef96aa4 100644
--- a/patches/series
+++ b/patches/series
@@ -50,3 +50,4 @@
0050-debian-rules-enable-WITH_CRIMSON-when-pkg.ceph.crims.patch
0051-debian-ceph.spec-fix-ceph-osd-upgrade-conflicts.patch
0052-cmake-build-static-seastar-for-release-builds.patch
+0053-debian-rules-exclude-ceph-osd-crimson-from-dwz-compr.patch
--
2.47.3
_______________________________________________
pve-devel mailing list
pve-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel
next prev parent reply other threads:[~2026-01-23 7:58 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-01-21 15:12 [pve-devel] [PATCH ceph] cherry-pick changes to use system packages for bundled deps Kefu Chai
2026-01-22 8:29 ` [pve-devel] [PATCH ceph] cherry-pick changes to buiild crimson package Kefu Chai
2026-01-22 10:14 ` [pve-devel] [PATCH ceph 2/3 v2] " Kefu Chai
2026-01-22 10:14 ` [pve-devel] [PATCH ceph 3/3] make: build with pkg.ceph.crimson build profile Kefu Chai
2026-01-22 10:56 ` [pve-devel] [PATCH ceph 2/3 v3] cherry-pick changes to build crimson package Kefu Chai
2026-01-22 11:43 ` [pve-devel] [PATCH ceph 2/3 v4] " Kefu Chai
2026-01-23 7:56 ` [pve-devel] [PATCH ceph 1/4 v5] cherry-pick changes to use system packages for bundled deps Kefu Chai
2026-01-23 8:18 ` Kefu Chai
2026-01-23 13:03 ` Fabian Grünbichler
2026-01-23 7:56 ` [pve-devel] [PATCH ceph 2/4 v5] cherry-pick changes to build crimson package Kefu Chai
2026-01-23 13:03 ` Fabian Grünbichler
2026-01-23 7:56 ` Kefu Chai [this message]
2026-01-23 13:03 ` [pve-devel] [PATCH ceph 3/4 v5] exclude ceph-osd-crimson when running dwz Fabian Grünbichler
2026-01-23 7:56 ` [pve-devel] [PATCH ceph 4/4 v5] make: build with pkg.ceph.crimson build profile Kefu Chai
2026-01-23 13:03 ` Fabian Grünbichler
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260123075619.2731724-8-k.chai@proxmox.com \
--to=k.chai@proxmox.com \
--cc=pve-devel@lists.proxmox.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox