Commit b87d34ca authored by Joey Gouly's avatar Joey Gouly Committed by Will Deacon
Browse files

arm64: vdso: put ELF related sections in the linker script



Use macros from vmlinux.lds.h to explicitly name sections that are included
in the VDSO output.

Signed-off-by: default avatarJoey Gouly <joey.gouly@arm.com>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will@kernel.org>
Cc: Masahiro Yamada <masahiroy@kernel.org>
Cc: Vincenzo Frascino <vincenzo.frascino@arm.com>
Cc: Kees Cook <keescook@chromium.org>
Reviewed-by: default avatarKees Cook <keescook@chromium.org>
Reviewed-by: default avatarVincenzo Frascino <vincenzo.frascino@arm.com>
Link: https://lore.kernel.org/r/20220510095834.32394-2-joey.gouly@arm.com


Signed-off-by: default avatarWill Deacon <will@kernel.org>
parent a111daf0
Loading
Loading
Loading
Loading
+16 −0
Original line number Diff line number Diff line
@@ -11,6 +11,7 @@
#include <linux/const.h>
#include <asm/page.h>
#include <asm/vdso.h>
#include <asm-generic/vmlinux.lds.h>

OUTPUT_FORMAT("elf64-littleaarch64", "elf64-bigaarch64", "elf64-littleaarch64")
OUTPUT_ARCH(aarch64)
@@ -49,11 +50,26 @@ SECTIONS

	.dynamic	: { *(.dynamic) }		:text	:dynamic

	.rela.dyn	: ALIGN(8) { *(.rela .rela*) }

	.plt		: {
		*(.plt)
		*(.plt.*)
		*(.iplt)
		*(.igot .igot.plt)
	}

	.got		: { *(.got) }
	.got.plt	: { *(.got.plt) }

	.rodata		: { *(.rodata*) }		:text

	_end = .;
	PROVIDE(end = .);

	DWARF_DEBUG
	ELF_DETAILS

	/DISCARD/	: {
		*(.data .data.* .gnu.linkonce.d.* .sdata*)
		*(.bss .sbss .dynbss .dynsbss)