|
From: | jie ren |
Subject: | Using ubuntu24.4 system qemu-system-aarch64 +gdb-multiarch to debug the kernel, setting breakpoints cannot be stopped |
Date: | Mon, 23 Sep 2024 22:36:11 +0800 |
Hi, I have a question for help
I recently Using ubuntu24.4 system qemu-system-aarch64 +gdb-multiarch to debug the kernel, setting breakpoints cannot be stopped.
system information:
ubuntu version: 22.04
Debug kernel version: 5.0.0
qemu version:
· qemu-system-aarch64 --version
· QEMU emulator version 8.2.2 (Debian 1:8.2.2+ds-0ubuntu1.2)
· Copyright (c) 2003-2023 Fabrice Bellard and the QEMU Project developers
gdb version:
· gdb-multiarch --version
· GNU gdb (Ubuntu 15.0.50.20240403-0ubuntu1) 15.0.50.20240403-git
· Copyright (C) 2024 Free Software Foundation, Inc.
· License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
· This is free software: you are free to change and redistribute it.
· There is NO WARRANTY, to the extent permitted by law.
Steps to reproduce:
1. Boot the system using qemu:
1. qemu-system-aarch64
-machine virt -cpu cortex-a57 -machine type=virt -m 1024 -smp 4 -kernel
arch/arm64/boot/Image --append "noinitrd root=/dev/vda rw
console=ttyAMA0 loglevel=8" -nographic -drive
if=none,file=rootfs_ext4.img,id=hd0 -device virtio-blk-device,drive=hd0
--fsdev local,id=kmod_dev,path=$PWD/kmodules,security_model=none -device
virtio-9p-device,fsdev=kmod_dev,mount_tag=kmod_mount -S -s
Use gdb-multiarch to connect and debug:
gdb-multiarch vmlinux
(gdb) target remote localhost:1234
Remote debugging using localhost:1234
0x0000000040000000 in ?? ()
(gdb) b start_kernel
Breakpoint 1 at 0xffff2000126704ec: file init/main.c, line 538.
(gdb) c
Continuing.
[Prev in Thread] | Current Thread | [Next in Thread] |