Message ID | 20231207134322.3185149-1-ecordonnier@snap.com |
---|---|
State | New |
Headers | show |
Series | manuals: document minidebuginfo | expand |
Hi Etienne, thanks for your documentation of minidebuginfo! On Thu, Dec 07 2023 at 14:43 +0100, "Etienne Cordonnier via lists.yoctoproject.org" <ecordonnier=snap.com@lists.yoctoproject.org> wrote: > From: Etienne Cordonnier <ecordonnier@snap.com> > > Signed-off-by: Etienne Cordonnier <ecordonnier@snap.com> > --- > documentation/dev-manual/debugging.rst | 15 +++++++++++++++ > documentation/ref-manual/features.rst | 3 +++ > 2 files changed, 18 insertions(+) > > diff --git a/documentation/dev-manual/debugging.rst b/documentation/dev-manual/debugging.rst > index fea2cb30a..75dc53649 100644 > --- a/documentation/dev-manual/debugging.rst > +++ b/documentation/dev-manual/debugging.rst > @@ -1173,6 +1173,21 @@ To support this kind of debugging, you need do the following: > Consider that this will reduce the application's performance and is > recommended only for debugging purposes. > > +Enabling Minidebuginfo > +====================== > + > +Enabling the DISTRO_FEATURES minidebuginfo adds a compressed ELF section ".gnu_debugdata" > +to all binary files, containing only function names, and thus increasing the size of the > +binaries only of 5 to 10%. For comparison, full debug symbols can be 10 times as big as s/of 5 to 10%/by 5 to 10%/ Best regards Ulrich > +a stripped binary, and it is thus not always possible to deploy full debug symbols. > +Minidebuginfo data allows, on the one side, to retrieve a call-stack using > +gdb (command backtrace) without deploying full debug-symbols to the target. It also > +allows to retrieve a symbolicated call-stack when using systemd-coredump to manage > +coredumps (commands "coredumpctl list" and "coredumpctl info"). > + > +This feature was created by Fedora, see https://fedoraproject.org/wiki/Features/MiniDebugInfo for > +more details. > + > Other Debugging Tips > ==================== > > diff --git a/documentation/ref-manual/features.rst b/documentation/ref-manual/features.rst > index dd14339bc..1320c3a58 100644 > --- a/documentation/ref-manual/features.rst > +++ b/documentation/ref-manual/features.rst > @@ -161,6 +161,9 @@ metadata, as extra layers can define their own: > - *keyboard:* Include keyboard support (e.g. keymaps will be loaded > during boot). > > +- *minidebuginfo:* Add minimal debug symbols :ref:`(minidebuginfo)<dev-manual/debugging:enabling minidebuginfo>` > + to binary files containing, allowing coredumpctl and gdb to show symbolicated stack traces. > + > - *multiarch:* Enable building applications with multiple architecture > support.
diff --git a/documentation/dev-manual/debugging.rst b/documentation/dev-manual/debugging.rst index fea2cb30a..75dc53649 100644 --- a/documentation/dev-manual/debugging.rst +++ b/documentation/dev-manual/debugging.rst @@ -1173,6 +1173,21 @@ To support this kind of debugging, you need do the following: Consider that this will reduce the application's performance and is recommended only for debugging purposes. +Enabling Minidebuginfo +====================== + +Enabling the DISTRO_FEATURES minidebuginfo adds a compressed ELF section ".gnu_debugdata" +to all binary files, containing only function names, and thus increasing the size of the +binaries only of 5 to 10%. For comparison, full debug symbols can be 10 times as big as +a stripped binary, and it is thus not always possible to deploy full debug symbols. +Minidebuginfo data allows, on the one side, to retrieve a call-stack using +gdb (command backtrace) without deploying full debug-symbols to the target. It also +allows to retrieve a symbolicated call-stack when using systemd-coredump to manage +coredumps (commands "coredumpctl list" and "coredumpctl info"). + +This feature was created by Fedora, see https://fedoraproject.org/wiki/Features/MiniDebugInfo for +more details. + Other Debugging Tips ==================== diff --git a/documentation/ref-manual/features.rst b/documentation/ref-manual/features.rst index dd14339bc..1320c3a58 100644 --- a/documentation/ref-manual/features.rst +++ b/documentation/ref-manual/features.rst @@ -161,6 +161,9 @@ metadata, as extra layers can define their own: - *keyboard:* Include keyboard support (e.g. keymaps will be loaded during boot). +- *minidebuginfo:* Add minimal debug symbols :ref:`(minidebuginfo)<dev-manual/debugging:enabling minidebuginfo>` + to binary files containing, allowing coredumpctl and gdb to show symbolicated stack traces. + - *multiarch:* Enable building applications with multiple architecture support.