diff options
author | Joey Gouly <joey.gouly@arm.com> | 2022-05-10 10:58:33 +0100 |
---|---|---|
committer | Will Deacon <will@kernel.org> | 2022-06-23 15:34:59 +0100 |
commit | eeec7223b6977b28dc0ae657a6f56dfef9eb868a (patch) | |
tree | 3d23d3baab0ffb29cedb881c27d7ffc5edfbfd99 /arch/arm64/kernel/vdso32 | |
parent | e0ab20b20a1bb53d61feedb1fd6c23cbbed11d18 (diff) |
arm64: vdso32: put ELF related sections in the linker script
Use macros from vmlinux.lds.h to explicitly name sections that are included
in the compat VDSO32 output.
Signed-off-by: Joey 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: Kees Cook <keescook@chromium.org>
Reviewed-by: Vincenzo Frascino <vincenzo.frascino@arm.com>
Link: https://lore.kernel.org/r/20220510095834.32394-4-joey.gouly@arm.com
Signed-off-by: Will Deacon <will@kernel.org>
Diffstat (limited to 'arch/arm64/kernel/vdso32')
-rw-r--r-- | arch/arm64/kernel/vdso32/vdso.lds.S | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/arch/arm64/kernel/vdso32/vdso.lds.S b/arch/arm64/kernel/vdso32/vdso.lds.S index 3348ce5ea306..120cf422036f 100644 --- a/arch/arm64/kernel/vdso32/vdso.lds.S +++ b/arch/arm64/kernel/vdso32/vdso.lds.S @@ -11,6 +11,7 @@ #include <linux/const.h> #include <asm/page.h> #include <asm/vdso.h> +#include <asm-generic/vmlinux.lds.h> OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm", "elf32-littlearm") OUTPUT_ARCH(arm) @@ -37,10 +38,29 @@ SECTIONS .rodata : { *(.rodata*) } :text - .text : { *(.text*) } :text =0xe7f001f2 + .text : { + *(.text*) + *(.glue_7) + *(.glue_7t) + *(.vfp11_veneer) + *(.v4_bx) + } :text =0xe7f001f2 + + .rel.dyn : { *(.rel.text) } .got : { *(.got) } + .rel.got : { *(.rel.got) } + .got.plt : { *(.got.plt) } .rel.plt : { *(.rel.plt) } + .plt : { + *(.plt) + *(.rel.iplt) + *(.iplt) + *(.igot.plt) + } + + ELF_DETAILS + .ARM.attributes 0 : { *(.ARM.attributes) } /DISCARD/ : { *(.note.GNU-stack) |