Merge patch series "Introduce 64b relocatable kernel"
authorPalmer Dabbelt <palmer@rivosinc.com>
Wed, 19 Apr 2023 14:47:45 +0000 (07:47 -0700)
committerPalmer Dabbelt <palmer@rivosinc.com>
Wed, 19 Apr 2023 14:47:45 +0000 (07:47 -0700)
commit310c33dc7a1278d80ba717b9964bd478d52681e0
tree0480d0a0aa1b9c1efa31f498d6227ed2b931aad1
parent2667e3673f7079cf95d58cf84d7c0b5a455ac68b
parent559d1e45a16dcf1542e430ea3dce9ab625be98d0
Merge patch series "Introduce 64b relocatable kernel"

Alexandre Ghiti <alexghiti@rivosinc.com> says:

After multiple attempts, this patchset is now based on the fact that the
64b kernel mapping was moved outside the linear mapping.

The first patch allows to build relocatable kernels but is not selected
by default. That patch is a requirement for KASLR.
The second and third patches take advantage of an already existing powerpc
script that checks relocations at compile-time, and uses it for riscv.

* b4-shazam-merge:
  riscv: Use --emit-relocs in order to move .rela.dyn in init
  riscv: Check relocations at compile time
  powerpc: Move script to check relocations at compile time in scripts/
  riscv: Introduce CONFIG_RELOCATABLE
  riscv: Move .rela.dyn outside of init to avoid empty relocations
  riscv: Prepare EFI header for relocatable kernels

Link: https://lore.kernel.org/r/20230329045329.64565-1-alexghiti@rivosinc.com
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
arch/riscv/Kconfig
arch/riscv/Makefile
arch/riscv/include/asm/topology.h
arch/riscv/mm/init.c