Re: [PATCH v2 08/59] x86/build: Ensure proper function alignment

From: Peter Zijlstra
Date: Tue Sep 13 2022 - 04:09:22 EST


On Mon, Sep 12, 2022 at 09:44:05PM +0200, Peter Zijlstra wrote:
> On Mon, Sep 12, 2022 at 10:09:38AM -0400, Linus Torvalds wrote:
>
> > The patch looks sane, the only thing I worry a bit about is
> >
> > > +config FUNCTION_ALIGNMENT
> > > + int
> > > + default 64 if FUNCTION_ALIGNMENT_64B
> > ..
> > > + default 0
> >
> > Is '0' even a valid value then for things like
>
> At the time I thought to have read that 0 alignment effectively no-ops
> the statement, but now I can't find it in a hurry, happy to make it
> default to 4.

Found it: https://sourceware.org/binutils/docs-2.39/as/Balign.html

7.8 .balign[wl] [abs-expr[, abs-expr[, abs-expr]]]

Pad the location counter (in the current subsection) to a particular
storage boundary. The first expression (which must be absolute) is the
alignment request in bytes. ... If the expression is omitted then a
default value of 0 is used, effectively disabling alignment
requirements.

(for some raisin google served me a very old binutils document last
night that doesn't have mention the 0 thing)