Re: [PATCH] Documentation/changes: Raise minimum supported binutils version to 2.23

From: Masahiro Yamada
Date: Tue Mar 24 2020 - 13:32:15 EST


On Wed, Mar 25, 2020 at 12:38 AM Arvind Sankar <nivedita@xxxxxxxxxxxx> wrote:
>
> On Tue, Mar 24, 2020 at 06:12:01PM +0900, Masahiro Yamada wrote:
> > On Tue, Mar 24, 2020 at 6:02 PM Masahiro Yamada <masahiroy@xxxxxxxxxx> wrote:
> > >
> > > Hi.
> > >
> > >
> > >
> > > On Tue, Mar 24, 2020 at 5:51 AM Kees Cook <keescook@xxxxxxxxxxxx> wrote:
> > > >
> > > > On Mon, Mar 23, 2020 at 02:44:54PM -0600, Jason A. Donenfeld wrote:
> > > > > On Mon, Mar 16, 2020 at 05:02:59PM +0100, Borislav Petkov wrote:
> > > > > > Long overdue patch, see below.
> > > > > >
> > > > > > Plan is to queue it after 5.7-rc1.
> > > > > >
> > > > > > ---
> > > > > > From: Borislav Petkov <bp@xxxxxxx>
> > > > > > Date: Mon, 16 Mar 2020 16:28:36 +0100
> > > > > > Subject: [PATCH] Documentation/changes: Raise minimum supported binutilsa version to 2.23
> > > > > >
> > > > > > The currently minimum-supported binutils version 2.21 has the problem of
> > > > > > promoting symbols which are defined outside of a section into absolute.
> > > > > > According to Arvind:
> > > > > >
> > > > > > binutils-2.21 and -2.22. An x86-64 defconfig will fail with
> > > > > > Invalid absolute R_X86_64_32S relocation: _etext
> > > > > > and after fixing that one, with
> > > > > > Invalid absolute R_X86_64_32S relocation: __end_of_kernel_reserve
> > > > > >
> > > > > > Those two versions of binutils have a bug when it comes to handling
> > > > > > symbols defined outside of a section and binutils 2.23 has the proper
> > > > > > fix, see: https://sourceware.org/legacy-ml/binutils/2012-06/msg00155.html
> >
> >
> > This seems to be also related to
> > 7883a14339299773b2ce08dcfd97c63c199a9289
> >
> >
> > I had noticed the symbol "_text"
> > was absolute on binutils <= 2.22,
> > but I was not sure whether it was a bug of the tool.
> >
> > I applied the fix.
> > Perhaps, it was unneeded given that
> > we require the binutils 2.23
> >
>
> Which architecture? x86 at least doesn't even build with <= 2.22, but
> adding workarounds for that shows _text as section-relative (T in nm
> output).


The reporter found this for PowerPC,
but I think this could happen on any architecture.

https://patchwork.kernel.org/patch/11430243/




--
Best Regards
Masahiro Yamada