]> git.baikalelectronics.ru Git - kernel.git/commit
ARM: 9038/1: Link with '-z norelro'
authorNathan Chancellor <natechancellor@gmail.com>
Tue, 8 Dec 2020 00:34:16 +0000 (01:34 +0100)
committerRussell King <rmk+kernel@armlinux.org.uk>
Mon, 21 Dec 2020 11:19:21 +0000 (11:19 +0000)
commit4140885a3a09320f00792e9bf06ae96556227856
treec8b13e68e2b00a9477db11bdc394d5c5cd486725
parente8f01b7191d592c57e707baa5912dbd27bfea03b
ARM: 9038/1: Link with '-z norelro'

When linking a multi_v7_defconfig + CONFIG_KASAN=y kernel with
LD=ld.lld, the following error occurs:

$ make ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- LLVM=1 zImage
ld.lld: error: section: .exit.data is not contiguous with other relro sections

LLD defaults to '-z relro', which is unneeded for the kernel because
program headers are not used nor is there any position independent code
generation or linking for ARM. Add '-z norelro' to LDFLAGS_vmlinux to
avoid this error.

Link: https://github.com/ClangBuiltLinux/linux/issues/1189
Reviewed-by: Nick Desaulniers <ndesaulniers@google.com>
Tested-by: Nick Desaulniers <ndesaulniers@google.com>
Signed-off-by: Nathan Chancellor <natechancellor@gmail.com>
Signed-off-by: Russell King <rmk+kernel@armlinux.org.uk>
arch/arm/Makefile