Estou tentando iniciar um kernel de falha usando o Kernel Crash Dump do Linux. Ambos os kernel host e crash são compilados pelo kernel linux-4.13.16. Infelizmente, o kernel do crash falha ao iniciar depois que a falha ocorre.
relatórios do iomem reservam espaço para o crash kernel e o kdump relata que está pronto para o kdump:
28000000-37ffffff : Crash kernel
$ sudo kdump-config show
DUMP_MODE: kdump
USE_KDUMP: 1
KDUMP_SYSCTL: kernel.panic_on_oops=1
KDUMP_COREDIR: /var/crash
crashkernel addr: 0x28000000
/var/lib/kdump/vmlinuz: symbolic link to /boot/vmlinuz-4.13.16ksa
kdump initrd:
/var/lib/kdump/initrd.img: symbolic link to /var/lib/kdump/initrd.img-4.13.16ksa
current state: ready to kdump
kexec command:
/sbin/kexec -p --command-line="BOOT_IMAGE=/boot/vmlinuz-4.13.16ksa root=UUID=3254c608-d885-4dfc-b20b-fa4e69564dca ro quiet splash vt.handoff=7 irqpoll noirqdistrib nr_cpus=1 nousb systemd.unit=kdump-tools.service" --initrd=/var/lib/kdump/initrd.img /var/lib/kdump/vmlinuz
$ cat /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-4.13.16ksa root=UUID=3254c608-d885-4dfc-b20b-fa4e69564dca ro quiet splash crashkernel=384M-2G:128M,2G-:256M vt.handoff=7
Após acionar a falha usando o disparador sysrq, ele não carrega o kernel com falha.
Eu testei com um kernel genérico, o linux-4.8.0-36-generic, que funciona com sucesso.
O arquivo syslog é aqui .
Tanto o linux-4.8.0-36-generic quanto o linux-4.13.16ksa possuem o mesmo arquivo .config. A única diferença que consigo ver é que durante o boot, para o linux-4.13.0-38, ele carrega o efi.signed vmlinuz (vmlinuz-4.13.0-38-generic.efi.signed) onde como o linux-4.13.16ksa compilado não é assinado.
Pode ser um problema? Como posso resolver isso?
Tags debugging crash linux-kernel kdump