Re: linux-next: Tree for Dec 7 (kallsyms failure)

From: Nicholas Piggin
Date: Thu Dec 08 2016 - 00:08:47 EST


On Thu, 8 Dec 2016 15:29:35 +1100
Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx> wrote:

> Hi all,
>
> On Wed, 7 Dec 2016 18:30:57 -0800 Randy Dunlap <rdunlap@xxxxxxxxxxxxx> wrote:
> >
> > On 12/07/16 15:56, Stephen Rothwell wrote:
> > >
> > > On Wed, 7 Dec 2016 15:42:32 -0800 Randy Dunlap <rdunlap@xxxxxxxxxxxxx> wrote:
> > >>
> > >> I started seeing this yesterday (2016-1206).
> > >> This is on x86_64.
> > >>
> > >> Anybody know about it?
> > >>
> > >> kallsyms failure: relative symbol value 0xffffffff81000000 out of range in relative mode
> > >
> > > I got a similar failure starting a few days ago on my powerpc
> > > allyesconfig build. I was assuming that it was PowerPC specific, but
> > > noone has found a cause yet.
> > >
> >
> > It may just be an invalid randconfig. I modified scripts/kallsyms.c and
> > I see this message:
> > kallsyms failure: relative symbol value 0xffffffff81000000 [symbol: Tstartup_64] out of range in relative mode
> >
> > and it makes sense that startup_64 would (or could) be at 0xffffffff81000000...
> > especially since CONFIG_PHYSICAL_START=0x1000000 and
> > (from Documentation/x86/x86_64/mm.txt)
> > ffffffff80000000 - ffffffff9fffffff (=512 MB) kernel text mapping, from phys 0
> >
> >
> > Ard, what do you think about this?
>
> The similar failure I saw in the powerpc allyesconfig build
>
> kallsyms failure: relative symbol value 0xc000000000000000 out of range in relative mode
>
> was caused by commit
>
> 8ab2ae655bfe ("default exported asm symbols to zero")
>
> which has been reverted in Linus' tree today.
>

Huh, so it seems like the explicit 0 symbols were being picked up as the
kallsyms relative base, putting the 0xc... symbols beyond reach.