qemu-devel
[Top][All Lists]
Advanced

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

[Qemu-devel] Re: [PATCH] fix gdbstub support for multiple threads in use


From: Jan Kiszka
Subject: [Qemu-devel] Re: [PATCH] fix gdbstub support for multiple threads in usermode, v2
Date: Wed, 03 Jun 2009 00:44:18 +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

Nathan Froyd wrote:
> On Tue, Jun 02, 2009 at 10:14:22PM +0100, Paul Brook wrote:
>>>> Really? Why doesn't GDB get confused on real machines when the PID wraps?
>>>> Is the real bug that we're missing some sort of thread
>>>> creation/destruction event reporting?
>>> Hm, this is a good point.  I think the bug is that:
>>> ...
>>> I'm also not sure what to do differently that doesn't involve making
>>> QEMU remember what happened to all the threads it's seen until GDB asks
>>> about them.  Ideas?
>> Ok, from Daniel's response it sounds like this bit of gdb is broken.
>>
>> Could we use the real TID? Seems silly to invent a new value when the host 
>> has 
>> already found one for us...
> 
> That would work for threaded usermode emulation.  But for multiple-cpu
> system-mode emulation, the CPUs are unlikely to have unique TID values
> (e.g. r2 on powerpc or what have you).  And if you're going to support
> hotplugging someday, you're going to have support generation of unique
> IDs somewhere along the way.  Using the same code for usermode and
> system mode seems like the better, more robust/future-proof option.

For system-mode emulation, this is not that problematic. The threaded
model assumes that all CPUs use the same memory mapping (for the code of
interest at least) and are programmed with the same set of
break/watchpoints. Pulling one and reinserting it will not require gdb
to handle the newly plugged one differently within this model.

Once we have a true multicore model for gdb and proper protocol
extensions to handle more complex use cases, I bet we will also have a
CPU hotplug event channel for gdb.

Jan

Attachment: signature.asc
Description: OpenPGP digital signature


reply via email to

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