Re: [PATCH mips-next 0/4] MIPS: vmlinux.lds.S sections fix & cleanup

From: Alexander Lobakin
Date: Wed Jan 06 2021 - 15:15:11 EST


From: Nathan Chancellor <natechancellor@xxxxxxxxx>
Date: Mon, 4 Jan 2021 17:09:36 -0700

> On Mon, Jan 04, 2021 at 12:18:10PM +0000, Alexander Lobakin wrote:
>> This series hunts the problems discovered after manual enabling of
>> ARCH_WANT_LD_ORPHAN_WARN, notably the missing PAGE_ALIGNED_DATA()
>> section affecting VDSO placement (marked for stable).
>>
>> Compile and runtime tested on MIPS32R2 CPS board with no issues.
>>
>> Alexander Lobakin (4):
>> MIPS: vmlinux.lds.S: add missing PAGE_ALIGNED_DATA() section
>> MIPS: vmlinux.lds.S: add ".rel.dyn" to DISCARDS
>> MIPS: vmlinux.lds.S: add ".gnu.attributes" to DISCARDS
>> MIPS: select ARCH_WANT_LD_ORPHAN_WARN
>>
>> arch/mips/Kconfig | 1 +
>> arch/mips/kernel/vmlinux.lds.S | 5 ++++-
>> 2 files changed, 5 insertions(+), 1 deletion(-)
>>
>> --
>> 2.30.0
>>
>
> Glad to see ARCH_WANT_LD_ORPHAN_WARN catching on :)
>
> I took this for a spin with clang with malta_kvm_guest_defconfig and I
> only see one section unaccounted for:
>
> $ make -skj"$(nproc)" ARCH=mips CROSS_COMPILE=mipsel-linux-gnu- LLVM=1 O=out/mips distclean malta_kvm_guest_defconfig all
> ...
> ld.lld: warning: <internal>:(.got) is being placed in '.got'
> ld.lld: warning: <internal>:(.got) is being placed in '.got'
> ld.lld: warning: <internal>:(.got) is being placed in '.got'
>
> Looks like most architectures place it in .got (ia64, nios2, powerpc)
> or .text (arm64).

Addressed in v2, thanks!

> Cheers,
> Nathan

Al