Tested in dump file form in arm64; working.
arm64 -----
vm
SERIES=noble ARCH=arm64 DISK=${SERIES}_${ARCH}.qcow2
wget https://cloud-images.ubuntu.com/$SERIES/current/${SERIES}-server-cloudimg-${ARCH}.img qemu-img create -F qcow2 -b ${SERIES}-server-cloudimg-${ARCH}.img -f qcow2 $DISK 8G
sudo apt install -y qemu-system-arm qemu-efi
dd if=/dev/zero of=flash1.img bs=1M count=64 dd if=/dev/zero of=flash0.img bs=1M count=64 dd if=/usr/share/qemu-efi/QEMU_EFI.fd of=flash0.img conv=notrunc
qemu-system-aarch64 \ -machine virt -cpu cortex-a57 \ -pflash flash0.img -pflash flash1.img \ \ -smp cpus=2 -m 2048 \ -nodefaults -no-user-config \ -nographic -serial stdio \ \ -drive file=$DISK,if=none,id=drive0 \ -device virtio-blk-device,drive=drive0 \ \ -drive file=test-cidata.iso,media=cdrom \ \ -netdev user,hostfwd=::22222-:22,id=net0 \ -device virtio-net-device,netdev=net0
$ ssh ubuntu@127.0.0.1 -p 22222
$ lsb_release -cs No LSB modules are available. noble
$ uname -m aarch64
$ uname -rv 6.6.0-14-generic #14-Ubuntu SMP PREEMPT_DYNAMIC Thu Nov 30 10:53:08 UTC 2023
kdump-tools
sudo apt update && sudo apt install -y linux-crashdump # No, Yes sudo sed 's/crashkernel=[^" ]\+/crashkernel=512M/' -i /etc/default/grub.d/kdump-tools.cfg sudo update-grub && sudo reboot
$ sudo dmesg | grep 'crashkernel reserved:' [ 0.000000] crashkernel reserved: 0x0000000089800000 - 0x00000000a9800000 (512 MB)
$ sudo kdump-config status current state : ready to kdump
crashdump
$ echo c | sudo tee /proc/sysrq-trigger
$ find /var/crash /var/crash /var/crash/kexec_cmd /var/crash/202401082101 /var/crash/202401082101/dmesg.202401082101 /var/crash/202401082101/dump.202401082101 /var/crash/kdump_lock /var/crash/linux-image-6.6.0-14-generic-202401082101.crash
debug symbols
dpkg -l | awk '$2 ~ /linux-image-[0-9.-]+-generic/ { print $2, $3}' \ | while read pkg version; do \ dbgpkg="linux-image-unsigned-${pkg#linux-image-}-dbgsym"; \ arch=$(dpkg --print-architecture); \ wget "https://launchpad.net/ubuntu/+archive/primary/+files/${dbgpkg}_${version}_${arch}.ddeb"; \ done
ar p linux-image-unsigned-*-dbgsym_*.ddeb data.tar.xz | tar xJ --wildcards './usr/lib/debug/boot/vmlinux-*-generic'
crash
sudo add-apt-repository -y ppa:mfo/lp2047861-noble-crash && sudo apt install -y crash
$ dpkg -s crash | grep Version: Version: 8.0.4-1ubuntu1
$ crash ./usr/lib/debug/boot/vmlinux-*-generic /var/crash/*/dump.* ... KERNEL: ./usr/lib/debug/boot/vmlinux-6.6.0-14-generic DUMPFILE: /var/crash/202401082101/dump.202401082101 [PARTIAL DUMP] CPUS: 2 DATE: Mon Jan 8 20:58:35 UTC 2024 UPTIME: 00:24:51 LOAD AVERAGE: 0.08, 0.15, 0.67 TASKS: 127 NODENAME: test RELEASE: 6.6.0-14-generic VERSION: #14-Ubuntu SMP PREEMPT_DYNAMIC Thu Nov 30 10:53:08 UTC 2023 MACHINE: aarch64 (unknown Mhz) MEMORY: 2 GB PANIC: "Kernel panic - not syncing: sysrq triggered crash" PID: 4928 COMMAND: "tee" TASK: ffff000000d13300 [THREAD_INFO: ffff000000d13300] CPU: 0 STATE: TASK_RUNNING (PANIC)
crash> bt PID: 4928 TASK: ffff000000d13300 CPU: 0 COMMAND: "tee" #0 [ffff800083f63980] machine_kexec at ffff800080042e70 #1 [ffff800083f63b10] __crash_kexec at ffff8000802017a0 #2 [ffff800083f63b90] panic at ffff8000800c8b68 #3 [ffff800083f63c20] sysrq_handle_crash at ffff800080d3a81c #4 [ffff800083f63c30] __handle_sysrq at ffff800080d3b694 #5 [ffff800083f63ca0] write_sysrq_trigger at ffff800080d3c1d8 #6 [ffff800083f63cc0] proc_reg_write at ffff8000805d4688 #7 [ffff800083f63d40] vfs_write at ffff8000804faa48 #8 [ffff800083f63d90] ksys_write at ffff8000804faec4 #9 [ffff800083f63dc0] __arm64_sys_write at ffff8000804fafac #10 [ffff800083f63e10] invoke_syscall at ffff800080033d68 #11 [ffff800083f63e40] el0_svc_common.constprop.0 at ffff800080033e60 #12 [ffff800083f63e70] do_el0_svc at ffff800080033f7c #13 [ffff800083f63e80] el0_svc at ffff80008158286c #14 [ffff800083f63ea0] el0t_64_sync_handler at ffff800081582f54 #15 [ffff800083f63fe0] el0t_64_sync at ffff800080011e44 PC: 0000e295c3915c28 LR: 0000e295c38abb6c SP: 0000ffffcb160ac0 X29: 0000ffffcb160ac0 X28: 0000000000000002 X27: 0000000000000002 X26: 0000ffffcb160c08 X25: 0000000000000002 X24: 0000000000000002 X23: 0000000000000002 X22: 0000000000000002 X21: 0000c232444942c0 X20: 0000ffffcb160c08 X19: 0000000000000003 X18: 0000000000000003 X17: 0000e295c38a9c00 X16: 0000c2320e44fdb0 X15: 0000000000000000 X14: ffffffffffffffff X13: 0000000000000000 X12: 000000000000001a X11: 0101010101010101 X10: 00000000000001b0 X9: 0000000000000028 X8: 0000000000000040 X7: 0000000000000001 X6: 0000000000000000 X5: 00000000fbad2c87 X4: 00000000ffffffff X3: 0000000000000001 X2: 0000000000000002 X1: 0000ffffcb160c08 X0: 0000000000000003 ORIG_X0: 0000000000000003 SYSCALLNO: 40 PSTATE: 20001000 crash> quit
Tested in dump file form in arm64; working.
arm64
-----
vm
SERIES=noble {SERIES} _${ARCH} .qcow2
ARCH=arm64
DISK=$
wget https:/ /cloud- images. ubuntu. com/$SERIES/ current/ ${SERIES} -server- cloudimg- ${ARCH} .img -server- cloudimg- ${ARCH} .img -f qcow2 $DISK 8G
qemu-img create -F qcow2 -b ${SERIES}
sudo apt install -y qemu-system-arm qemu-efi
dd if=/dev/zero of=flash1.img bs=1M count=64 share/qemu- efi/QEMU_ EFI.fd of=flash0.img conv=notrunc
dd if=/dev/zero of=flash0.img bs=1M count=64
dd if=/usr/
qemu-system- aarch64 \ if=none, id=drive0 \ blk-device, drive=drive0 \ cidata. iso,media= cdrom \ ::22222- :22,id= net0 \ net-device, netdev= net0
-machine virt -cpu cortex-a57 \
-pflash flash0.img -pflash flash1.img \
\
-smp cpus=2 -m 2048 \
-nodefaults -no-user-config \
-nographic -serial stdio \
\
-drive file=$DISK,
-device virtio-
\
-drive file=test-
\
-netdev user,hostfwd=
-device virtio-
$ ssh ubuntu@127.0.0.1 -p 22222
$ lsb_release -cs
No LSB modules are available.
noble
$ uname -m
aarch64
$ uname -rv
6.6.0-14-generic #14-Ubuntu SMP PREEMPT_DYNAMIC Thu Nov 30 10:53:08 UTC 2023
kdump-tools
sudo apt update && sudo apt install -y linux-crashdump # No, Yes =512M/' -i /etc/default/ grub.d/ kdump-tools. cfg
sudo sed 's/crashkernel=[^" ]\+/crashkernel
sudo update-grub && sudo reboot
$ sudo dmesg | grep 'crashkernel reserved:'
[ 0.000000] crashkernel reserved: 0x0000000089800000 - 0x00000000a9800000 (512 MB)
$ sudo kdump-config status
current state : ready to kdump
crashdump
$ echo c | sudo tee /proc/sysrq-trigger
$ find /var/crash kexec_cmd 202401082101 202401082101/ dmesg.202401082 101 202401082101/ dump.2024010821 01 kdump_lock linux-image- 6.6.0-14- generic- 202401082101. crash
/var/crash
/var/crash/
/var/crash/
/var/crash/
/var/crash/
/var/crash/
/var/crash/
debug symbols
dpkg -l | awk '$2 ~ /linux- image-[ 0-9.-]+ -generic/ { print $2, $3}' \
dbgpkg= "linux- image-unsigned- ${pkg#linux- image-} -dbgsym" ; \ architecture) ; \ /launchpad. net/ubuntu/ +archive/ primary/ +files/ ${dbgpkg} _${version} _${arch} .ddeb"; \
| while read pkg version; do \
arch=$(dpkg --print-
wget "https:/
done
ar p linux-image- unsigned- *-dbgsym_ *.ddeb data.tar.xz | tar xJ --wildcards './usr/ lib/debug/ boot/vmlinux- *-generic'
crash
sudo add-apt-repository -y ppa:mfo/ lp2047861- noble-crash && sudo apt install -y crash
$ dpkg -s crash | grep Version:
Version: 8.0.4-1ubuntu1
$ crash ./usr/lib/ debug/boot/ vmlinux- *-generic /var/crash/*/dump.* debug/boot/ vmlinux- 6.6.0-14- generic 202401082101/ dump.2024010821 01 [PARTIAL DUMP]
...
KERNEL: ./usr/lib/
DUMPFILE: /var/crash/
CPUS: 2
DATE: Mon Jan 8 20:58:35 UTC 2024
UPTIME: 00:24:51
LOAD AVERAGE: 0.08, 0.15, 0.67
TASKS: 127
NODENAME: test
RELEASE: 6.6.0-14-generic
VERSION: #14-Ubuntu SMP PREEMPT_DYNAMIC Thu Nov 30 10:53:08 UTC 2023
MACHINE: aarch64 (unknown Mhz)
MEMORY: 2 GB
PANIC: "Kernel panic - not syncing: sysrq triggered crash"
PID: 4928
COMMAND: "tee"
TASK: ffff000000d13300 [THREAD_INFO: ffff000000d13300]
CPU: 0
STATE: TASK_RUNNING (PANIC)
crash> bt common. constprop. 0 at ffff800080033e60 sync_handler at ffff800081582f54
PID: 4928 TASK: ffff000000d13300 CPU: 0 COMMAND: "tee"
#0 [ffff800083f63980] machine_kexec at ffff800080042e70
#1 [ffff800083f63b10] __crash_kexec at ffff8000802017a0
#2 [ffff800083f63b90] panic at ffff8000800c8b68
#3 [ffff800083f63c20] sysrq_handle_crash at ffff800080d3a81c
#4 [ffff800083f63c30] __handle_sysrq at ffff800080d3b694
#5 [ffff800083f63ca0] write_sysrq_trigger at ffff800080d3c1d8
#6 [ffff800083f63cc0] proc_reg_write at ffff8000805d4688
#7 [ffff800083f63d40] vfs_write at ffff8000804faa48
#8 [ffff800083f63d90] ksys_write at ffff8000804faec4
#9 [ffff800083f63dc0] __arm64_sys_write at ffff8000804fafac
#10 [ffff800083f63e10] invoke_syscall at ffff800080033d68
#11 [ffff800083f63e40] el0_svc_
#12 [ffff800083f63e70] do_el0_svc at ffff800080033f7c
#13 [ffff800083f63e80] el0_svc at ffff80008158286c
#14 [ffff800083f63ea0] el0t_64_
#15 [ffff800083f63fe0] el0t_64_sync at ffff800080011e44
PC: 0000e295c3915c28 LR: 0000e295c38abb6c SP: 0000ffffcb160ac0
X29: 0000ffffcb160ac0 X28: 0000000000000002 X27: 0000000000000002
X26: 0000ffffcb160c08 X25: 0000000000000002 X24: 0000000000000002
X23: 0000000000000002 X22: 0000000000000002 X21: 0000c232444942c0
X20: 0000ffffcb160c08 X19: 0000000000000003 X18: 0000000000000003
X17: 0000e295c38a9c00 X16: 0000c2320e44fdb0 X15: 0000000000000000
X14: ffffffffffffffff X13: 0000000000000000 X12: 000000000000001a
X11: 0101010101010101 X10: 00000000000001b0 X9: 0000000000000028
X8: 0000000000000040 X7: 0000000000000001 X6: 0000000000000000
X5: 00000000fbad2c87 X4: 00000000ffffffff X3: 0000000000000001
X2: 0000000000000002 X1: 0000ffffcb160c08 X0: 0000000000000003
ORIG_X0: 0000000000000003 SYSCALLNO: 40 PSTATE: 20001000
crash> quit