1// SPDX-License-Identifier: GPL-2.0-only
2
3#include <linux/vmcore_info.h>
4#include <asm/abs_lowcore.h>
5#include <linux/mm.h>
6#include <asm/setup.h>
7
8void arch_crash_save_vmcoreinfo(void)
9{
10 struct lowcore *abs_lc;
11
12 VMCOREINFO_SYMBOL(lowcore_ptr);
13 VMCOREINFO_SYMBOL(high_memory);
14 VMCOREINFO_LENGTH(lowcore_ptr, NR_CPUS);
15 vmcoreinfo_append_str("SAMODE31=%lx\n", (unsigned long)__samode31);
16 vmcoreinfo_append_str("EAMODE31=%lx\n", (unsigned long)__eamode31);
17 vmcoreinfo_append_str(fmt: "KERNELOFFSET=%lx\n", kaslr_offset());
18 abs_lc = get_abs_lowcore();
19 abs_lc->vmcore_info = paddr_vmcoreinfo_note();
20 put_abs_lowcore(abs_lc);
21}
22

source code of linux/arch/s390/kernel/vmcore_info.c