Re: powerpc-linux-gnu-ld: warning: orphan section `.data.rel.ro' from `arch/powerpc/kernel/head_44x.o' being placed in section `.data.rel.ro'.
From: Masahiro Yamada
Date: Mon Nov 13 2017 - 10:15:22 EST
Hi Nicholas,
2017-11-11 17:45 GMT+09:00 Nicholas Piggin <npiggin@xxxxxxxxx>:
> On Fri, 10 Nov 2017 23:41:49 +0800
> kbuild test robot <fengguang.wu@xxxxxxxxx> wrote:
>
>> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
>> head: 1c9dbd4615fd751e5e0b99807a3c7c8612e28e20
>> commit: cb87481ee89dbd6609e227afbf64900fb4e5c930 kbuild: linker script do not match C names unless LD_DEAD_CODE_DATA_ELIMINATION is configured
>> date: 3 months ago
>> config: powerpc-fsp2_defconfig (attached as .config)
>> compiler: powerpc-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0
>> reproduce:
>> wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
>> chmod +x ~/bin/make.cross
>> git checkout cb87481ee89dbd6609e227afbf64900fb4e5c930
>> # save the attached .config to linux build tree
>> make.cross ARCH=powerpc
>>
>> All warnings (new ones prefixed by >>):
>>
>> >> powerpc-linux-gnu-ld: warning: orphan section `.data.rel.ro' from `arch/powerpc/kernel/head_44x.o' being placed in section `.data.rel.ro'.
>> >> powerpc-linux-gnu-ld: warning: orphan section `.data.rel.ro' from `arch/powerpc/kernel/head_44x.o' being placed in section `.data.rel.ro'.
>> >> powerpc-linux-gnu-ld: warning: orphan section `.data.rel.ro' from `arch/powerpc/kernel/head_44x.o' being placed in section `.data.rel.ro'.
>
> Okay this is not caused by the above patch, it was just hiding it.
> This should do the trick I think:
> --
> powerpc/32: Add .data.rel* sections explicitly
>
> Match powerpc/64 and include .data.rel* input sections in the .data output
> section explicitly.
>
> This should solve the warning:
>
> powerpc-linux-gnu-ld: warning: orphan section `.data.rel.ro' from `arch/powerpc/kernel/head_44x.o' being placed in section `.data.rel.ro'.
>
> Reported-by: kbuild test robot <fengguang.wu@xxxxxxxxx>
> Signed-off-by: Nicholas Piggin <npiggin@xxxxxxxxx>
I think this will go to the PPC tree.
I will not touch this patch, but
if necessary, please feel free to add
Reviewed-by: Masahiro Yamada <yamada.masahiro@xxxxxxxxxxxxx>
> ---
> arch/powerpc/kernel/vmlinux.lds.S | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/arch/powerpc/kernel/vmlinux.lds.S b/arch/powerpc/kernel/vmlinux.lds.S
> index 0494e1566ee2..51e4ec92ade1 100644
> --- a/arch/powerpc/kernel/vmlinux.lds.S
> +++ b/arch/powerpc/kernel/vmlinux.lds.S
> @@ -264,6 +264,7 @@ SECTIONS
> #ifdef CONFIG_PPC32
> .data : AT(ADDR(.data) - LOAD_OFFSET) {
> DATA_DATA
> + *(.data.rel*)
> *(.sdata)
> *(.sdata2)
> *(.got.plt) *(.got)
> --
> 2.15.0
>
--
Best Regards
Masahiro Yamada