Re: [PATCH 3/8] arm64: Extend support for CONFIG_FUNCTION_ALIGNMENT

From: Mark Rutland
Date: Wed Jan 11 2023 - 06:40:45 EST


On Tue, Jan 10, 2023 at 08:43:20PM +0000, Will Deacon wrote:
> On Tue, Jan 10, 2023 at 09:35:18PM +0100, Peter Zijlstra wrote:
> > On Mon, Jan 09, 2023 at 01:58:23PM +0000, Mark Rutland wrote:
> >
> > > diff --git a/arch/arm64/include/asm/linkage.h b/arch/arm64/include/asm/linkage.h
> > > index 1436fa1cde24d..df18a3446ce82 100644
> > > --- a/arch/arm64/include/asm/linkage.h
> > > +++ b/arch/arm64/include/asm/linkage.h
> > > @@ -5,8 +5,14 @@
> > > #include <asm/assembler.h>
> > > #endif
> > >
> > > -#define __ALIGN .align 2
> > > -#define __ALIGN_STR ".align 2"
> > > +#if CONFIG_FUNCTION_ALIGNMENT > 0
> > > +#define ARM64_FUNCTION_ALIGNMENT CONFIG_FUNCTION_ALIGNMENT
> > > +#else
> > > +#define ARM64_FUNCTION_ALIGNMENT 4
> > > +#endif
> > > +
> > > +#define __ALIGN .balign ARM64_FUNCTION_ALIGNMENT
> > > +#define __ALIGN_STR ".balign " #ARM64_FUNCTION_ALIGNMENT
> >
> > Isn't that much the same as having ARM64 select FUNCTION_ALIGNMENT_4B
> > and simply removing all these lines and relying on the default
> > behaviour?
>
> There's a proposal (with some rough performance claims) to select
> FUNCTION_ALIGNMENT_16B over at:
>
> https://lore.kernel.org/r/20221208053649.540891-1-almasrymina@xxxxxxxxxx
>
> so we could just go with that?

I reckon it'd be worth having that as a separate patch atop, to split the
infrastructure from the actual change, but I'm happy to go with 16B immediately
if you'd prefer.

It'd be nice if we could get some numbers...

Thanks,
Mark.