* Re: powerpc/kexec_file: print configured kernel command line
2025-07-25 12:44 powerpc/kexec_file: print configured kernel command line Sourabh Jain
2026-07-10 3:40 ` Ritesh Harjani
@ 2026-07-10 7:05 ` Mukesh Kumar Chaurasiya
1 sibling, 0 replies; 3+ messages in thread
From: Mukesh Kumar Chaurasiya @ 2026-07-10 7:05 UTC (permalink / raw)
To: Sourabh Jain; +Cc: linuxppc-dev, Madhavan Srinivasan, Michael Ellerman
On Fri, Jul 25, 2025 at 06:14:38PM +0530, Sourabh Jain wrote:
> Kexec with the -d option prints extra logs about the kexec/kdump kernel
> that help debug kexec and kdump. For example, it shows what kexec
> segments are loaded, their locations, and sizes.
>
> One key piece of information still missing is the kernel command line
> configured for the kexec/kdump kernel.
>
> With this patch included, the kernel will print the kernel command line
> configured for the kexec/kdump kernel as shown below:
>
> kexec --initrd=./initrd ./kernel -lspd --command-line="test1 test2"
>
> Loaded elf core header at 0x22e30000, bufsz=0x2000 memsz=0x80000
> kexec_elf: Command line: elfcorehdr=0x22e30000 test1 test2 <--- New
> kexec_elf: Loaded initrd at 0x22eb0000
>
> Cc: Madhavan Srinivasan <maddy@linux.ibm.com>
> Cc: Michael Ellerman <mpe@ellerman.id.au>
> Signed-off-by: Sourabh Jain <sourabhjain@linux.ibm.com>
> ---
> arch/powerpc/kexec/elf_64.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/arch/powerpc/kexec/elf_64.c b/arch/powerpc/kexec/elf_64.c
> index 5d6d616404cf..db0af790c784 100644
> --- a/arch/powerpc/kexec/elf_64.c
> +++ b/arch/powerpc/kexec/elf_64.c
> @@ -90,6 +90,8 @@ static void *elf64_load(struct kimage *image, char *kernel_buf,
> cmdline = modified_cmdline;
> }
>
> + kexec_dprintk("Command line: %s", cmdline ? cmdline : "");
> +
> if (initrd != NULL) {
> kbuf.buffer = initrd;
> kbuf.bufsz = kbuf.memsz = initrd_len;
> --
> 2.50.1
>
>
Tested this on P11 LPAR.
[ 485.755942] kexec_file: kernel: 00000000cb90aae7 kernel_size: 0x1d1531d0
[ 485.762870] kexec_elf: Loaded the kernel at 0x80000000
[ 485.762930] kexec_elf: Loaded purgatory at 0x9fff0000
[ 485.762944] Loaded the backup region at 0x84160000
[ 485.763088] crash_core: Crash PT_LOAD ELF header. phdr=00000000364832a7 vaddr=0xc000000000000000, paddr=0x0, sz=0x10000 e_phnum=178 p_offset=0x0
[ 485.763095] crash_core: Crash PT_LOAD ELF header. phdr=000000009122d5f0 vaddr=0xc000000000010000, paddr=0x10000, sz=0x7fff0000 e_phnum=179 p_offset=0x10000
[ 485.763099] crash_core: Crash PT_LOAD ELF header. phdr=000000007ead431b vaddr=0xc0000000a0000000, paddr=0xa0000000, sz=0xb10000000 e_phnum=180 p_offset=0xa0000000
[ 485.763103] crash_core: Crash PT_LOAD ELF header. phdr=0000000001ee8e6f vaddr=0xc000000bb0000000, paddr=0xbb0000000, sz=0x5d0000000 e_phnum=181 p_offset=0xbb0000000
[ 485.763108] crash_core: Crash PT_LOAD ELF header. phdr=000000004566b315 vaddr=0xc000001180000000, paddr=0x1180000000, sz=0x1d20000000 e_phnum=182 p_offset=0x1180000000
[ 485.763112] crash_core: Crash PT_LOAD ELF header. phdr=00000000a9df7c03 vaddr=0xc000002ea0000000, paddr=0x2ea0000000, sz=0x1d10000000 e_phnum=183 p_offset=0x2ea0000000
[ 485.763116] crash_core: Crash PT_LOAD ELF header. phdr=0000000077ee5d4c vaddr=0xc000004bb0000000, paddr=0x4bb0000000, sz=0x1d10000000 e_phnum=184 p_offset=0x4bb0000000
[ 485.763119] crash_core: Crash PT_LOAD ELF header. phdr=000000000ea82932 vaddr=0xc0000068c0000000, paddr=0x68c0000000, sz=0x1740000000 e_phnum=185 p_offset=0x68c0000000
[ 485.763124] Backup region offset updated to 0x84160000
[ 485.763130] Loaded elf core header at 0x84170000, bufsz=0x3000 memsz=0x80000
[ 485.763134] No dm-crypt keys
[ 485.763139] kexec_elf: Command line: elfcorehdr=0x84170000 BOOT_IMAGE=(ieee1275//vdevice/v-scsi@30000065/disk@8100000000000000,gpt2)/vmlinuz-6.19.7-200.fc43.ppc64le root=/dev/mapper/fedora-root ro rd.lvm.lv=fedora/root crashkernel=512M@2G test1 test2
[ 485.763145] kexec_elf: Loaded initrd at 0x841f0000
[ 485.763678] Memory node path: /memory@0
[ 485.795492] kexec_elf: Loaded device tree at 0x9ffd0000
[ 486.417820] kexec_file: nr_segments = 6
[ 486.417839] kexec_file: segment[0]: buf=0x00000000ac04377b bufsz=0x3f74bc4 mem=0x80000000 memsz=0x4160000
[ 486.424367] kexec_file: segment[1]: buf=0x00000000b22938ec bufsz=0x310 mem=0x9fff0000 memsz=0x10000
[ 486.424403] kexec_file: segment[2]: buf=0x0000000043b34bd4 bufsz=0x10000 mem=0x84160000 memsz=0x10000
[ 486.424417] kexec_file: segment[3]: buf=0x00000000421e955d bufsz=0x3000 mem=0x84170000 memsz=0x80000
[ 486.424450] kexec_file: segment[4]: buf=0x000000009a7ce2c9 bufsz=0x4ed96f8 mem=0x841f0000 memsz=0x4ee0000
[ 486.432514] kexec_file: segment[5]: buf=0x0000000023a3b280 bufsz=0x1553b mem=0x9ffd0000 memsz=0x20000
[ 486.432558] kexec_file: kexec_file_load: type:1, start:0x9fff0000 head:0x4 flags:0xa
Tested-by: Mukesh Kumar Chaurasiya (IBM) <mkchauras@gmail.com>
Reviewed-by: Mukesh Kumar Chaurasiya (IBM) <mkchauras@gmail.com>
^ permalink raw reply [flat|nested] 3+ messages in thread