Fwd: [PATCH] x86/tools/relocs: Add _etext and __end_of_kernel_reserve to S_REL

From: Mauro Rossi
Date: Sat Jan 11 2020 - 14:47:49 EST


Message resent as plain text to linux-kernel@xxxxxxxxxxxxxxx
because of rejection of previous message

---------- Forwarded message ---------
From: Mauro Rossi <issor.oruam@xxxxxxxxx>
Date: Sat, Jan 11, 2020 at 8:36 PM
Subject: Re: [PATCH] x86/tools/relocs: Add _etext and
__end_of_kernel_reserve to S_REL
To: Kees Cook <keescook@xxxxxxxxxxxx>
Cc: Borislav Petkov <bp@xxxxxxxxx>, Arvind Sankar
<nivedita@xxxxxxxxxxxx>, Thomas Gleixner <tglx@xxxxxxxxxxxxx>, Ingo
Molnar <mingo@xxxxxxxxxx>, H. Peter Anvin <hpa@xxxxxxxxx>,
<x86@xxxxxxxxxx>, Linux Kernel Mailing List
<linux-kernel@xxxxxxxxxxxxxxx>, Thomas Lendacky
<Thomas.Lendacky@xxxxxxx>


Hello Kees,

On Fri, Jan 10, 2020 at 9:56 PM Kees Cook <keescook@xxxxxxxxxxxx> wrote:
>
> On Fri, Jan 10, 2020 at 09:38:28PM +0100, Borislav Petkov wrote:
> > On Fri, Jan 10, 2020 at 03:23:49PM -0500, Arvind Sankar wrote:
> > > Pre-2.23 binutils makes symbols defined outside sections absolute, so
> > > these two symbols break the build on old linkers.
> >
> > -ENOTENOUGHINFO
> >
> > Which old linkers, how exactly do they break the build, etc etc?
> >
> > Please give exact reproduction steps.
>
> Mauro (now CCed) ran into this too, but on 32-bit builds only with older
> binutils. I hadn't set up an environment to try to reproduce it yet, but
> it seems like this patch would fix it. Mauro can you test this? Does it
> fix it for you too?
>
> https://lore.kernel.org/lkml/20200110202349.1881840-1-nivedita@xxxxxxxxxxxx/
>
> -Kees


The patch solves the issue with Android build of 32bit kernel,
I don't see 'Invalid absolute R_386_32 relocation' errors anymore.

Thanks a lot!

Mauro