Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Daniel Jacobowitz <drow@false.org>
To: Eli Zaretskii <eliz@gnu.org>
Cc: gdb@sources.redhat.com
Subject: Re: debugging threaded apps. thread ID missing in corefile.
Date: Tue, 07 Jun 2005 13:10:00 -0000	[thread overview]
Message-ID: <20050607131022.GA30174@nevyn.them.org> (raw)
In-Reply-To: <uk6l6akxm.fsf@gnu.org>

On Tue, Jun 07, 2005 at 06:46:13AM +0300, Eli Zaretskii wrote:
> > Date: Mon, 6 Jun 2005 20:09:44 -0400
> > From: Daniel Jacobowitz <drow@false.org>
> > Cc: gdb@sources.redhat.com
> > 
> > On Mon, Jun 06, 2005 at 05:33:09PM -0500, Manoj Iyer wrote:
> > > 
> > > Regarding debugging threaded apps, gdb does not display the pthread id (ID
> > > returned by pthread_self() ) when reading information from a corefile.
> > 
> > Yes.  You can find information about this decision in the list
> > archives.  We need to use libthread_db.so.1 to retrieve thread IDs, and
> > we do not have a graceful way to use it for only core dumps which
> > belong to the native system (as opposed to sysrooted or cross core
> > dumps).
> 
> If this situation is not going to be changed RSN, I suggest to say
> this in the manual.  Any objections?

No objection from me.  I'm not planning to change it, because (a)
thread IDs are mostly cosmetic, and (b) the cross-debugging case is
more important to me than the native case.

> Btw, the node "Threads" in the manual sounds at least a little
> outdated: e.g., it only mentions Solaris and HP-UX as platforms
> capable of supporting multi-threaded debuggees.  Could someone in the
> know please read that node and see if it needs to be updated in any
> significant way?

I just took a look at it; I think it's fine.  It also mentions SGI and
Lynx further down; the Lynx code is I think removed now, but still
serves as a valid example here.

> > > Where as when debugging the program live it is able to display the pthread
> > > id (I dont know why the ID is a negative number, could be a bug?).
> > 
> > Not really.  The ID is a pointer above 0x80000000, used by the
> > implementation.
> 
> Well, then perhaps we should display the thread ID in hex?

Hmm.  I wouldn't object to this.  The number is opaque to the user
code; for LinuxThreads it is an encoded index into an array (usually
between 0 and 64k; the first few threads are numbered around 32k and
16k).  That looks plausible in hex or in decimal.  For NPTL they are
pointers and would look more plausible in hex.

-- 
Daniel Jacobowitz
CodeSourcery, LLC


  reply	other threads:[~2005-06-07 13:10 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-06-06 22:29 Program no longer exists [SOLVED] Alvin Beach
2005-06-06 22:42 ` debugging threaded apps. thread ID missing in corefile Manoj Iyer
2005-06-07  0:09   ` Daniel Jacobowitz
2005-06-07  3:46     ` Eli Zaretskii
2005-06-07 13:10       ` Daniel Jacobowitz [this message]
2005-06-12  0:47         ` Mark Kettenis
2005-06-07  0:37 ` Program no longer exists [UNSOLVED] Alvin Beach
2005-06-07 18:45 ` Program no longer exists [SOLVED - 95% sure] Alvin Beach
2005-06-17 11:18   ` Program no longer exists [SOLVED - Completely] Alvin Beach

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20050607131022.GA30174@nevyn.them.org \
    --to=drow@false.org \
    --cc=eliz@gnu.org \
    --cc=gdb@sources.redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox