Re: [PATCH v7 6/6] x86/vdso: Enable sframe generation in VDSO

From: Josh Poimboeuf

Date: Fri Feb 06 2026 - 19:48:56 EST


On Fri, Feb 06, 2026 at 03:56:59PM -0800, H. Peter Anvin wrote:
> On February 6, 2026 9:48:24 AM PST, Jens Remus <jremus@xxxxxxxxxxxxx> wrote:
> >On 2/4/2026 1:49 AM, H. Peter Anvin wrote:
> >> On 2026-02-03 09:19, Jens Remus wrote:
> >>> -
> >>> +#if defined(__x86_64__) && defined(CONFIG_AS_SFRAME)
> >
> >My understanding is that you would like above changed to:
> >
> >#ifdef CONFIG_AS_SFRAME
> >
> >>> + .cfi_sections .eh_frame, .debug_frame, .sframe
> >>> +#else
> >>> .cfi_sections .eh_frame, .debug_frame
> >>> +#endif
> >>>
> >>
> >> It would be better to:
> >>
> >> #undef CONFIG_AS_SFRAME /* i386 doesn't support .sframe */
> >>
> >> in fake_32bit_build.h.
> >Due to (binutils 2.46 pre-release) GNU assembler supporting --gsframe-3,
> >but only for x86-64 not for x86-32 (nor x32) CONFIG_AS_SFRAME is enabled
> >even for my i386 cross build attempt. This then wrongly causes the
> >.cfi_sections with .sframe to be selected (verified by adding an #error
> >for testing).
> >
> >IIUC the .cfi_sections is there to have DWARF in both .eh_frame and
> >.debug_frame. For .sframe it basically has the same effect as
> >specifying the common assembler option --gsframe. Given the more
> >specific option --gsframe-3 is explicitly specified I think it would
> >be better to drop the changes to both dwarf2.h and fake_32bit_build.h
> >and solely rely on --gsframe-3.
> >
> >Josh, Indu, do you agree?
> >
> >Thanks and rRegards,
> >Jens
>
> Seems a lot cleaner to me, too, assuming it actually works.

+1

--
Josh