Message ID | 20210104121729.46981-1-alobakin@pm.me |
---|---|
Headers | show |
Series | MIPS: vmlinux.lds.S sections fix & cleanup | expand |
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). Cheers, Nathan
From: Nathan Chancellor <natechancellor@gmail.com> 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