Comment 5 for bug 2047861

Revision history for this message
Mauricio Faria de Oliveira (mfo) wrote :

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