[PATCH v4 0/4] RISC-V: Parse DT for Zkr to seed KASLR

Jesse Taube
2024-07-09T17:39:49Z

Add functions to pi/fdt_early.c to help parse the FDT to check if
the isa string has the Zkr extension. Then use the Zkr extension to
seed the KASLR base address.

The first two patches fix the visibility of symbols.

V1 -> V2:
- Add RISC-V: pi: Force hidden visibility for all symbol references
- Add RISC-V: pi: Add kernel/pi/pi.h
- Rewrite archrandom_early.c to parse DT over checking the csr
V2 -> V3:
- Add RISC-V: lib: Add pi aliases for string functions
- Rewrite isa_string_contains in third patch

Jesse Taube (4):
RISC-V: pi: Force hidden visibility for all symbol references
RISC-V: lib: Add pi aliases for string functions
RISC-V: pi: Add kernel/pi/pi.h
RISC-V: Use Zkr to seed KASLR base address

arch/riscv/kernel/pi/Makefile | 4 +-
arch/riscv/kernel/pi/archrandom_early.c | 30 +++++
arch/riscv/kernel/pi/cmdline_early.c | 10 +-
arch/riscv/kernel/pi/fdt_early.c | 167 +++++++++++++++++++++++-
arch/riscv/kernel/pi/pi.h | 20 +++
arch/riscv/lib/memset.S | 2 +
arch/riscv/lib/strcmp.S | 1 +
arch/riscv/lib/strncmp.S | 1 +
arch/riscv/mm/init.c | 5 +-
9 files changed, 224 insertions(+), 16 deletions(-)
create mode 100644 arch/riscv/kernel/pi/archrandom_early.c
create mode 100644 arch/riscv/kernel/pi/pi.h