Hi, Youling, On Wed, Aug 20, 2025 at 1:57 PM Youling Tang <youling.t...@linux.dev> wrote: > > From: Youling Tang <tangyoul...@kylinos.cn> > > This patchset implement kexec_file_load() support on LoongArch. > > This patch series enables us to load the LoongArch vmlinuz.efi(pez) or > vmlinux.efi(pei) or vmlinux(elf) by specifying its file decriptor, > instead of user-filled buffer via kexec_load() syscall. > > To use kexec_file_load() system call, instead of kexec_load(), at kexec > command, '-s' options must be specified. kexec-tools needs to apply the > corresponding patches. These patches can be found in repository [1] and > will be submitted to the kexec-tools community later. > > The basic usage of kexec_file is: > 1) Load second kernel image: > # kexec -s -l vmlinuz.efi --initrd=initrd.img --reuse-cmdline > > 2) Startup second kernel: > # kexec -e > > For kdump: > 1) Load capture kernel image: > # kexec -s -p vmlinuz.efi --initrd=initrd.img --reuse-cmdline > > 2) Do something to crash, like: > # echo c > /proc/sysrq-trigger > > Link: > [1] https://github.com/tangyouling/kexec-tools/commits/main/ > > Changelog: > v2: > * Merge some patches. > * Add support for ELF format images. > * Rename kexec_image.c to kexec_efi.c . > * When KEXEC_FILE is enabled, RELOCATABLE is selected by default. > * Some minor modifications. > > Youling Tang (5): > LoongArch: Add struct loongarch_image_header for kernel image > LoongArch: Add kexec_file support > LoongArch/kexec_file: Support loading ELF binary file I prefer to combine Patch-2 and Patch-3. :)
Huacai > LoongArch/kexec_file: Add crash dump support > LoongArch: Enable CONFIG_KEXEC_FILE > > arch/loongarch/Kconfig | 10 + > arch/loongarch/configs/loongson3_defconfig | 1 + > arch/loongarch/include/asm/image.h | 57 +++++ > arch/loongarch/include/asm/kexec.h | 13 ++ > arch/loongarch/kernel/Makefile | 1 + > arch/loongarch/kernel/kexec_efi.c | 111 ++++++++++ > arch/loongarch/kernel/kexec_elf.c | 105 +++++++++ > arch/loongarch/kernel/machine_kexec.c | 33 ++- > arch/loongarch/kernel/machine_kexec_file.c | 235 +++++++++++++++++++++ > 9 files changed, 555 insertions(+), 11 deletions(-) > create mode 100644 arch/loongarch/include/asm/image.h > create mode 100644 arch/loongarch/kernel/kexec_efi.c > create mode 100644 arch/loongarch/kernel/kexec_elf.c > create mode 100644 arch/loongarch/kernel/machine_kexec_file.c > > -- > 2.43.0 >