This is the mail archive of the gdb@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Why does gdb use its own thread ids internally rather than the tid from the underlying thread implementation?


On Mon, 2008-03-03 at 10:38 -0800, Martin Fouts wrote:
> Hi,
> 
> We're trying to optimize the NetBSD 4.0 implementation of pthreads,
> which has an M:N thread implementation, and are having some trouble
> getting gdb to work because the underlying thread id for a thread can
> change in an M:N implementation.
> 
> Can anyone provide any insight into why gdb doesn't use the underlying
> thread id?

Sure.  I think the main reason is that the underlying thread id
is usually something awkward for a user to type (like an 8-digit
hex number).  GDB supplies a counting number, just like for
breakpoints, so that you can type "thread 2" instead of 
"thread 77af21bc".

For another thing, gdb tries to present a more-or-less uniform
user interface across platforms.  Underlying thread ids are 
different from one platform to the next.

> Or suggestions about how to accommodate M:N without zombie queues?

Have you looked at the linux and solaris implementations?
They both have M:N thread models.




Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]