[PATCH] riscv: export kaslr offset and satp in VMCOREINFO ELF notes

Austin Kim austindh.kim at gmail.com
Tue Jan 27 01:31:19 PST 2026


From: Austin Kim <austin.kim at lge.com>

The following options are required by the kdump crash utility for RISC-V 
based vmcore file:

- kaslr: If the vmcore is generated from a KASLR-enabled Linux kernel, 
         the KASLR offset is required for the crash utility to load 
         the vmcore. Without the proper kaslr option, the crash utility 
         fails to load the vmcore file.
- satp: The exact root page table address helps determine the correct base 
        PGD address.

With this patch, RISC-V VMCOREINFO ELF notes now include both kaslr 
and satp information.

Signed-off-by: Austin Kim <austin.kim at lge.com>
---
 arch/riscv/kernel/vmcore_info.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/arch/riscv/kernel/vmcore_info.c b/arch/riscv/kernel/vmcore_info.c
index d5e448aa9..682ba423c 100644
--- a/arch/riscv/kernel/vmcore_info.c
+++ b/arch/riscv/kernel/vmcore_info.c
@@ -3,6 +3,11 @@
 #include <linux/vmcore_info.h>
 #include <linux/pagemap.h>
 
+static inline u64 get_satp_value(void)
+{
+	return csr_read(CSR_SATP);
+}
+
 void arch_crash_save_vmcoreinfo(void)
 {
 	VMCOREINFO_NUMBER(phys_ram_base);
@@ -27,5 +32,7 @@ void arch_crash_save_vmcoreinfo(void)
 #else
 	vmcoreinfo_append_str("NUMBER(va_kernel_pa_offset)=0x%lx\n",
 						kernel_map.va_kernel_pa_offset);
+	vmcoreinfo_append_str("KERNELOFFSET=%lx\n", kaslr_offset());
+	vmcoreinfo_append_str("NUMBER(satp)=0x%llx\n", get_satp_value());
 #endif
 }
-- 
2.34.1




More information about the linux-riscv mailing list