qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] Re: software breakpoints disappearing/reappearing in KV


From: Jan Kiszka
Subject: Re: [Qemu-devel] Re: software breakpoints disappearing/reappearing in KVM/qemu
Date: Sun, 10 Apr 2011 17:16:10 +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 2011-04-10 16:41, Avi Kivity wrote:
> On 04/10/2011 05:23 PM, Jan Kiszka wrote:
>> On 2011-04-10 16:01, Avi Kivity wrote:
>> >  On 04/08/2011 11:52 PM, Jan Kiszka wrote:
>> >>  QEMU's gdbstub in KVM mode is simply not designed to account for
>> guests
>> >>  swapping out code pages that contain breakpoints. Due to the fact
>> that
>> >>  the Linux kernel does not do these weird things to its own code,
>> >
>> >  It actually happily patches its own code at certain circumstances.  If
>> >  you debug early boot or suspend/resume or cpu hotplug you're likely to
>> >  encounter them.
>>
>> Yes, it patches (alternates, jump_labels, mcount etc.), but it doesn't
>> swap or move code pages. At least so far.
>>
> 
> Try using modules (though that's different - the virtual addresses will
> change too).  Or debugging a mixed kernel/user workload.

Modules don't go unexpectedly. Once they are loaded, they can perfectly
be debugged just like kernel code. Debugging init code requires care to
avoid leaving breakpoints behind in to-be-removed sections.

But that's not comparable to swapping. For that reason, debugging user
code via the gdbstub was always discouraged (and it's unneeded in 99% of
the time as such targets come with their own debugger).

Jan

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

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