Debug Info Standardization
Summary
Fedora 18 implemented Features/DwarfCompressor. As the format did not get widespread and the tool is not much maintained it became burden to make existing debugging tools compatible with Fedora.
Owner
- Name: Jan Kratochvil
- Email: jan.kratochvil@redhat.com
Current status
- Targeted release: Fedora 34
- Last updated: 2020-09-23
- FESCo issue: <will be assigned by the Wrangler>
- Tracker bug: <will be assigned by the Wrangler>
- Release notes tracker: <will be assigned by the Wrangler>
Detailed Description
The is a refresh of Fedora 18 Features/DebugTypesSections.
- .debug files contained in *-debuginfo.rpm are very big in general (debug/ has 82GB while all the other x86_64 Fedora distribution files are 75GB). There are various methods how to make the *-debuginfo.rpms smaller. Fedora 18 started using DWZ tool (from Features/DwarfCompressor) while Google implemented a similar but different approach called -fdebug-types-section.
The problem of existing Fedora DWZ saving is that almost nobody uses it (only Fedora/CentOS/RHEL and SuSE OSes) and so its support is missing in tools like LLDB and llvm-dwarfdump. Implementing support for DWZ is about 8x times more complicated (LoC count) than -fdebug-types-section.
- DWZ advantage: On the whole Fedora distro it saves 3.3% (5GB of the 157GB distribution size).
- Bulleted list item
Feedback
Benefit to Fedora
Scope
- Proposal owners:
- Other developers: N/A (not a System Wide Change)
- Release engineering: #Releng issue number (a check of an impact with Release Engineering is needed)
- Policies and guidelines: N/A (not a System Wide Change)
- Trademark approval: N/A (not needed for this Change)
- Alignment with Objectives:
Upgrade/compatibility impact
N/A (not a System Wide Change)
How To Test
N/A (not a System Wide Change)
User Experience
Dependencies
N/A (not a System Wide Change)
Contingency Plan
- Contingency mechanism: (What to do? Who will do it?) N/A (not a System Wide Change)
- Contingency deadline: N/A (not a System Wide Change)
- Blocks release? N/A (not a System Wide Change), Yes/No
- Blocks product? product
Documentation
N/A (not a System Wide Change)