2014年11月11日 星期二

gdb debug Linux kernel (run on qemu)

Run guest kernel with:
$qemu-system-x86_64 -enable-kvm -m 2048 -device virtio-blk,drive=virtio-blk    -drive file=./image,id=virtio-blk,if=none -vnc :10 -S -gdb tcp::1234

Connect to guest kernel with:
$xtightvncviewer localhost:10
The guest kernel should not run this time.

Run gdb and connect to qemu's guest kernel:
$gdb vmlinux
(gdb) target remote :1234
(gdb) hb start_kernel           (use hb if -enable-kvm)
(gdb) c
Guest kernel run until start_kernel.

If get this error: Remote 'g' packet reply is too long: 00000000000000000020e30100000000000000000000
Follow this blog.csdn.net/gdt_a20/article/details/7231652

0 意見:

張貼留言