On 15/03/2023 11:29, Luca Boccassi wrote:
Use the elf metadata spec: https://systemd.io/ELF_PACKAGE_METADATA/
I need to update that, as these days it's no longer necessary to use a
custom linker script, but with binutils 2.39 (or mold 1.3.0 or lld
15.0) it's as easy as passing as a linker flag:
--package-metadata='{"foo":"bar"}'
and it will be appended in the right location in the binary.
systemd-coredump will parse that, and attach it as-is as a
COREDUMP_PACKAGE_JSON= field in the journal.
If the json contains fields named 'name' and/or 'version' they will
also be appended independently as COREDUMP_PACKAGE_NAME= and
COREDUMP_PACKAGE_VERSION=
But as I said "many different tests use the same test runner
executable". So I'm not sure how adding ELF metadata to some binary
would help me in any way? For example, two different tests recipes A
and B each run python programs that each spawn a native soffice.bin
process, where those soffice.bin processes don't include any .so that
are specific to each test. If test A fails, its recipe should dump
backtraces for all core files caused by test A, but not for any core
files caused by test B.