[PATCH v4 0/5] RISC-V: Add kexec/kdump support

From: Nick Kossifidis
Date: Sun Apr 18 2021 - 20:56:10 EST


This patch series adds kexec/kdump and crash kernel
support on RISC-V. For testing the patches a patched
version of kexec-tools is needed (still a work in
progress) which can be found at:

https://riscv.ics.forth.gr/kexec-tools-patched.tar.xz

v4:
* Rebase on top of "fixes" branch
* Resolve Alex's comments

v3:
* Rebase on newer kernel tree
* Minor cleanups
* Split UAPI changes to a separate patch
* Improve / cleanup init_resources
* Resolve Palmer's comments

v2:
* Rebase on newer kernel tree
* Minor cleanups
* Properly populate the ioresources tre, so that it
can be used later on for implementing strict /dev/mem
* Use linux,usable-memory on /memory instead of a new binding
* USe a reserved-memory node for ELF core header

Nick Kossifidis (5):
RISC-V: Add EM_RISCV to kexec UAPI header
RISC-V: Add kexec support
RISC-V: Improve init_resources
RISC-V: Add kdump support
RISC-V: Add crash kernel support

arch/riscv/Kconfig | 25 ++++
arch/riscv/include/asm/elf.h | 6 +
arch/riscv/include/asm/kexec.h | 56 +++++++
arch/riscv/kernel/Makefile | 6 +
arch/riscv/kernel/crash_dump.c | 46 ++++++
arch/riscv/kernel/crash_save_regs.S | 56 +++++++
arch/riscv/kernel/kexec_relocate.S | 223 ++++++++++++++++++++++++++++
arch/riscv/kernel/machine_kexec.c | 193 ++++++++++++++++++++++++
arch/riscv/kernel/setup.c | 114 ++++++++------
arch/riscv/mm/init.c | 104 +++++++++++++
include/uapi/linux/kexec.h | 1 +
11 files changed, 784 insertions(+), 46 deletions(-)
create mode 100644 arch/riscv/include/asm/kexec.h
create mode 100644 arch/riscv/kernel/crash_dump.c
create mode 100644 arch/riscv/kernel/crash_save_regs.S
create mode 100644 arch/riscv/kernel/kexec_relocate.S
create mode 100644 arch/riscv/kernel/machine_kexec.c

--
2.26.2