[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200111130243.GA23583@zn.tnic>
Date: Sat, 11 Jan 2020 14:02:43 +0100
From: Borislav Petkov <bp@...en8.de>
To: Arvind Sankar <nivedita@...m.mit.edu>
Cc: Thomas Gleixner <tglx@...utronix.de>,
Ingo Molnar <mingo@...hat.com>,
"H. Peter Anvin" <hpa@...or.com>, x86@...nel.org,
linux-kernel@...r.kernel.org, Kees Cook <keescook@...omium.org>,
Thomas Lendacky <Thomas.Lendacky@....com>
Subject: Re: [PATCH] x86/tools/relocs: Add _etext and __end_of_kernel_reserve
to S_REL
On Fri, Jan 10, 2020 at 03:50:29PM -0500, Arvind Sankar 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.
> >
> > Thx.
> >
>
> 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
I'm still not clear as to why this happens. I tried reproducing on
openSUSE 12.1 which has
Repository: openSUSE-12.1-Oss
Name: binutils
Version: 2.21.1-12.1.4
and the build there fails with:
objdump: arch/x86/lib/clear_page_64.o: File format not recognized
objdump: arch/x86/lib/cmdline.o: File format not recognized
objdump: arch/x86/lib/cmpxchg16b_emu.o: File format not recognized
objdump: arch/x86/lib/copy_page_64.o: File format not recognized
objdump: arch/x86/lib/copy_user_64.o: File format not recognized
objdump: arch/x86/lib/cpu.o: File format not recognized
...
and objdump is part of binutils.
Now, this looks like another symptom of what you're reporting but what
we're missing is the rootcause about *why* this happens.
Because if the issue is hard to fix or similar, then we probably should
raise the minimum supported binutils version from 2.21 to something
newer and not do this fix.
But before we do that, we need a proper analysis as to why it happens.
Also, what distro are you using to reproduce it on?
Thx.
--
Regards/Gruss,
Boris.
https://people.kernel.org/tglx/notes-about-netiquette
Powered by blists - more mailing lists