qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] setting up breakpoints - kernel debugging help wit gdb


From: Jan Kiszka
Subject: Re: [Qemu-devel] setting up breakpoints - kernel debugging help wit gdb in qemu-kvm
Date: Wed, 22 Aug 2012 12:27:42 +0200
User-agent: Mozilla/5.0 (X11; U; Linux i686 (x86_64); de; rv:1.8.1.12) Gecko/20080226 SUSE/2.0.0.12-1.1 Thunderbird/2.0.0.12 Mnenhy/0.7.5.666

On 2012-08-22 01:53, Onkar wrote:
> I am running a linux guest like this - which I wish to debug - 
> but the breakpoint gets set but I am not able to stop the guest 
> execution at the set breakpoint - it just hangs after I do continue. 
> Can you please provide me some clues - 
> 
> # ./qemu-system-x86_64 -m 2048 -smp 4 -vga std -vnc :5 -drive
> file=/sda4/bin/disk/disk0.img,cache=writeback -S -s
> 
> # gdb
> GNU gdb (GDB) Fedora (7.2-52.fc14)
> Copyright (C) 2010 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.  Type "show
> copying"
> and "show warranty" for details.
> This GDB was configured as "x86_64-redhat-linux-gnu".
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>.
> The target architecture is assumed to be i386:x86-64:intel
> (gdb) symbol-file /sda4/kvm/vmlinux
> Reading symbols from /sda4/kvm/vmlinux...done.
> (gdb) target remote :1234
> Remote debugging using :1234
> 0x0000000000000000 in ?? ()
> (gdb) b kmem_cache_alloc
> Breakpoint 1 at 0xffffffff81121adb: file mm/slub.c, line 2375. (2
> locations)
> (gdb) c
> Continuing.

In KVM mode, soft-breakpoints can only be set when the kernel is already
loaded. The reason is that it injects a trap instruction in the guest
code, and that instruction will be overwritten during boot.

Use a hardware breakpoint instead, or interrupt the guest before the
interesting code is executed but after the kernel is loaded.

Jan

-- 
Siemens AG, Corporate Technology, CT RTC ITP SDP-DE
Corporate Competence Center Embedded Linux



reply via email to

[Prev in Thread] Current Thread [Next in Thread]