Re: [PATCH RFC 09/10] unwind: Introduce SFrame user space unwinding

From: Josh Poimboeuf
Date: Thu Nov 09 2023 - 14:38:03 EST


On Thu, Nov 09, 2023 at 11:31:59AM -0800, Indu Bhagat wrote:
> > + if (shdr.preamble.magic != SFRAME_MAGIC ||
> > + shdr.preamble.version != SFRAME_VERSION_1 ||
> > + (!shdr.preamble.flags & SFRAME_F_FDE_SORTED) ||
> > + shdr.auxhdr_len || !shdr.num_fdes || !shdr.num_fres ||
> > + shdr.fdes_off > shdr.fres_off) {
> > + return -EINVAL;
> > + }
> > +
>
> I would say that it will be ideal to start the support with SFRAME_VERSION_2
> onwards, if we have a choice.
>
> The structure SFrame FDE in SFRAME_VERSION_1 was unaligned on-disk. We
> fixed that in SFRAME_VERSION_2 (Binutils 2.41) by adding some padding as you
> have already noted. For x86_64, its not an issue though, yes.

Agreed. I actually had v2 implemented but then realized my binutils was
older so I changed to v1 for testing. But yeah, we can make v2 the
minimum.

--
Josh