From: George Anzinger <george@mvista.com>
To: Andrew Cagney <cagney@gnu.org>
Cc: Daniel Jacobowitz <drow@mvista.com>, gdb@sources.redhat.com
Subject: Re: Making "info thread" sane
Date: Wed, 03 Mar 2004 00:14:00 -0000 [thread overview]
Message-ID: <4045236B.3060104@mvista.com> (raw)
In-Reply-To: <404517E8.1020708@gnu.org>
Andrew Cagney wrote:
> Um, can you explain the problem?
The problem is that, for most threaded apps and for the kernel which treats each
task as a thread, the "info thread" command gives a list of threads all stopped
in the context switch code. What is desired is to do one or more "up" commands
and report info on this location.
The proposal I made was to define a set command to specify an address range that
"info thread" would "back" out of (using internal "up" commands), or to provide
a fixed number of "up"s, depending on which made the most sense for the application.
For the kernel, the range is what is currently used when it reports thread
information (internal kernel code, not kgdb or any such).
In the kgdb I currently have in the -mm kernel, I back this stuff up in the kgdb
stub, but it really doesn't have enough info to always do it right (but I have
not seen it fail yet :). Gdb, on the other hand, has the full frame debug info
and can do it correctly.
Please understand, if we then to a thread X command, we want to start in the
switch code, it is only for the thread info that we want the back out.
I have proposed writing this code. Daniel suggested that we discuss it a bit
more to make sure it all makes sense. I think his concern was with how we tell
gdb what the right thing to do is. I don't know how things like this are passed
to gdb at this time, but I have been wondering about a mech. to communicate with
stubs. Such an interface could pass back the bounds to use, for example. I
suppose we could bury this info in the thread info preamble record...
On the other hand, you probably don't want to let me loose in gdb. No telling
what I might add :)
--
George Anzinger george@mvista.com
High-res-timers: http://sourceforge.net/projects/high-res-timers/
Preemption patch: http://www.kernel.org/pub/linux/kernel/people/rml
next prev parent reply other threads:[~2004-03-03 0:14 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20040227212301.GC1052@smtp.west.cox.net>
[not found] ` <20040227235059.GG425@elf.ucw.cz>
[not found] ` <403FEA02.6040506@mvista.com>
[not found] ` <200403011454.35346.amitkale@emsyssoft.com>
[not found] ` <4044FEDE.5000105@mvista.com>
[not found] ` <20040302214535.GA24405@nevyn.them.org>
[not found] ` <40450749.7020304@mvista.com>
[not found] ` <20040302221718.GA26931@nevyn.them.org>
2004-03-02 23:15 ` George Anzinger
2004-03-02 23:25 ` Andrew Cagney
2004-03-03 0:14 ` George Anzinger [this message]
2004-03-03 6:01 ` Eli Zaretskii
2004-03-03 14:28 ` Daniel Jacobowitz
2004-03-03 15:08 ` Andrew Cagney
2004-03-03 18:40 ` George Anzinger
2004-03-03 18:54 ` Andrew Cagney
2004-03-03 22:04 ` George Anzinger
2004-03-09 1:25 ` Andrew Cagney
2004-03-12 0:24 ` George Anzinger
2004-03-12 21:33 ` Andrew Cagney
2004-03-22 9:40 ` George Anzinger
2004-04-21 1:30 ` George Anzinger
2004-03-08 19:21 Jim Houston
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=4045236B.3060104@mvista.com \
--to=george@mvista.com \
--cc=cagney@gnu.org \
--cc=drow@mvista.com \
--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