Re: Build failure in -next due to 'kbuild: allow archs to select link dead code/data elimination'

From: Nicholas Piggin
Date: Mon Sep 12 2016 - 22:00:43 EST


On Mon, 12 Sep 2016 15:24:43 -0700
Guenter Roeck <linux@xxxxxxxxxxxx> wrote:

> Hi,
>
> your commit 'kbuild: allow archs to select link dead code/data elimination'
> is causing the following build failure in -next when building score:defconfig.
>
> arch/score/kernel/built-in.o: In function `work_resched':
> arch/score/kernel/entry.o:(.text+0xe84):
> relocation truncated to fit: R_SCORE_PC19 against `schedule'
>
> Reverting the commit fixes the problem.
>
> Please let me know if I can help tracking down the problem.
> In case you need a score toochain, you can find the one I use at
> http://server.roeck-us.net/toolchains/score.tgz.
>
> Thanks,
> Guenter

It's not supposed to have any real effect unless the
option is selected, but there are a few changes to linker
script which must be causing it.

There are two changes to vmlinux.lds.h. One is to KEEP a
few input sections, that *should* be kept anyway. The other
is to bring in additional sections into their correct output
section.

Could you try reverting those lines of vmlinux.lds.h that
change the latter, i.e.:

- *(.text.hot .text .text.fixup .text.unlikely) \
+ *(.text.hot .text .text.fixup .text.unlikely .text.*) \


- *(.bss) \
+ *(.bss .bss.[0-9a-zA-Z_]*) \

etc?

Thanks,
Nick