arm64: add support for building vmlinux as a relocatable PIE binary
authorArd Biesheuvel <ard.biesheuvel@linaro.org>
Tue, 26 Jan 2016 08:13:44 +0000 (09:13 +0100)
committerAlex Shi <alex.shi@linaro.org>
Wed, 11 May 2016 15:18:45 +0000 (23:18 +0800)
commit89328d41aa99df071dadb43c722cd88ffafc77e2
treed8f3aa049954132710c199b24ea62de1ac4646c5
parent525787eea48f8c6a1630e6dab07313896cfc6b8d
arm64: add support for building vmlinux as a relocatable PIE binary

This implements CONFIG_RELOCATABLE, which links the final vmlinux
image with a dynamic relocation section, allowing the early boot code
to perform a relocation to a different virtual address at runtime.

This is a prerequisite for KASLR (CONFIG_RANDOMIZE_BASE).

Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
(cherry picked from commit 1e48ef7fcc374051730381a2a05da77eb4eafdb0)
Signed-off-by: Alex Shi <alex.shi@linaro.org>
arch/arm64/Kconfig
arch/arm64/Makefile
arch/arm64/include/asm/elf.h
arch/arm64/kernel/head.S
arch/arm64/kernel/vmlinux.lds.S