[PATCH v3 0/3] sframe: Disable by default and support SFRAME_F_FDE_FUNC_START_PCREL
Andreas K. Huettel
dilfridge@gentoo.org
Thu Jul 24 15:58:00 GMT 2025
Am Mittwoch, 23. Juli 2025, 15:47:22 Mitteleuropäische Sommerzeit schrieb Adhemerval Zanella:
> The SFrame prior binutils 2.45 is unstable on multiple architectures,
> so upcoming binutils 2.45 should be considered the minimum required
> version for SFrame backtracing. This version also includes an erratum,
> SFRAME_F_FDE_FUNC_START_PCREL, which is not currently supported on
> glibc. SFrame with this flag is currently ignored by glibc SFrame
> handling.
>
> Due to the experimental nature, the first patch disables SFrame by
> default, adds extra checks to enable iff the architecture's explicit
> enablement is on glibc, and fixes some other build issues.
>
> The second patch adds support for the SFRAME_F_FDE_FUNC_START_PCREL
> erratum, which adds SFrame support for binaries built with binutils
> 2.45.
OK so I gave patch 1 another read and tested...
* x86-64, binutils pre-2.45:
- no configure parameter, builds and tests fine with no indications of sframe
- --enable-sframe, builds and tests fine with appropriate bits in the logs
* armv4tl, binutils 2.44:
- no configure parameter, builds and tests (mostly, nspawn) fine
- --enable-sframe, errors out with architecture not supported (good)
* aarch64, binutils 2.44:
- no configure parameter, builds and tests fine
- --enable-sframe, errors out with too old binutils (good)
Let's push it.
This is hopefully the last real patch, I'll start with the release
afterwards.
> Changes from v3:
> * Fix configure check when trying to enable SFrame with old
> toolchains.
> * Keep PT_GNU_SFRAME support on _dl-find_object.
> * Fixed wording on INSTALL.
>
> Changes from v2:
> * Fixed STRIP value if not defined.
> * Fixed configure check if libc_cv_support_sframe is not set.
> * Added SFrame checks on tst-dl_find_object.c
>
> Adhemerval Zanella (2):
> Disable SFrame support by default
> elf: Check SFrame on tst-dl_find_object.c
>
> Claudiu Zissulescu (1):
> sframe: Add support for SFRAME_F_FDE_FUNC_START_PCREL flag
>
> INSTALL | 9 +-
> NEWS | 7 +-
> aclocal.m4 | 4 +
> config.h.in | 3 +
> config.make.in | 2 +-
> configure | 100 ++++++++-------
> configure.ac | 60 ++++-----
> debug/Makefile | 16 ++-
> debug/backtrace.c | 6 +
> {sysdeps/pthread => debug}/tst-backtrace1.c | 0
> elf/tst-dl_find_object.c | 14 +++
> manual/install.texi | 11 +-
> sysdeps/aarch64/configure | 2 +
> sysdeps/aarch64/configure.ac | 2 +
> sysdeps/generic/Makefile | 2 +
> sysdeps/generic/sframe-read.c | 128 +++++++++++++++-----
> sysdeps/generic/sframe-read.h | 6 +
> sysdeps/generic/sframe.h | 15 ++-
> sysdeps/pthread/Makefile | 1 -
> sysdeps/x86_64/configure | 2 +
> sysdeps/x86_64/configure.ac | 2 +
> 21 files changed, 273 insertions(+), 119 deletions(-)
> rename {sysdeps/pthread => debug}/tst-backtrace1.c (100%)
>
>
--
Andreas K. Hüttel
dilfridge@gentoo.org
Gentoo Linux developer
(council, toolchain, base-system, perl, libreoffice)
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 981 bytes
Desc: This is a digitally signed message part.
URL: <https://sourceware.org/pipermail/libc-alpha/attachments/20250724/e3b22e5b/attachment.sig>
More information about the Libc-alpha
mailing list