Re: [PATCH v8 05/14] x86: conditionally place regular ASM functions into separate sections

From: Peter Zijlstra
Date: Fri Dec 03 2021 - 11:34:52 EST


On Fri, Dec 03, 2021 at 03:10:51PM +0100, Alexander Lobakin wrote:
> From: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
> Date: Fri, 3 Dec 2021 10:44:10 +0100
>
> > On Thu, Dec 02, 2021 at 11:32:05PM +0100, Alexander Lobakin wrote:
> > > Use the newly introduces macros to create unique separate sections
> > > for (almost) every "regular" ASM function (i.e. for those which
> > > aren't explicitly put into a specific one).
> > > There should be no leftovers as input .text will be size-asserted
> > > in the LD script generated for FG-KASLR.
> >
> > *groan*...
> >
> > Please, can't we do something like:
> >
> > #define SYM_PUSH_SECTION(name) \
> > .if section == .text \
> > .push_section .text.##name \
> > .else \
> > .push_section .text \
> > .endif
> >
> > #define SYM_POP_SECTION() \
> > .pop_section
> >
> > and wrap that inside the existing SYM_FUNC_START*() SYM_FUNC_END()
> > macros.
>
> Ah I see. I asked about this in my previous mail and you replied
> already (: Cool stuff, I'll use it, it simplifies things a lot.

Note, I've no idea if it works. GAS and me aren't really on speaking
terms. It would be my luck for that to be totally impossible, hjl?