Debian's Debugging Debacle: the Debrief
Proposal details:
Abstract: | This talk will focus on aspects related to making it easier to debug
Debian systems, particularly via objcopy's "--add-gnu-debuglink" feature. The talk will briefly introduce newcomers to debugging using gdb and contrast that to tools such as strace and ltrace, and explain what "debug symbols" are about. It will then cover Debian's approach to debug symbols (namely, to strip them all out of binaries before distributing them) and why we do things that way, with a side note on the friction this caused in the past with the FSF. This will include demonstrations of how debugging can be perfomed in spite of this, such as how core files from Debian users can be used by maintainers, and how -dbg packages can be used. The second portion of the talk will go into the technical details of the "--add-gnu-debuglink" approach to resolving the issues, with a brief introduction to the ELF and DWARF formats, and an explanation of how tools such as objcopy, gdb, elfutils, strip, and readelf interact (with a digression on elfutils, which Red Hat uses for this purpose and why that's not available in Debian). The final portion of the talk will cover how these features can be integrated into the Debian system. The issues to be addressed are: defining a format for distributing the debug information to users; establishing proper tool support to ensure users can easily obtain the source in a format that actually works with gdb; tool support to enable maintainers to provide debug support easily; and considerations in reducing the impact of this support on buildd maintainers, mirror operators and others. |
|
Presentation type: |
|
|
Track: |
|
|
Status: |
|
Authors:
Erinn Clark
Anthony Towns