Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: George Anzinger <george@mvista.com>
To: Daniel Jacobowitz <drow@mvista.com>
Cc: Eli Zaretskii <eliz@elta.co.il>, cagney@gnu.org, gdb@sources.redhat.com
Subject: Re: Making "info thread" sane
Date: Wed, 03 Mar 2004 18:40:00 -0000	[thread overview]
Message-ID: <4046267E.1080808@mvista.com> (raw)
In-Reply-To: <20040303142842.GA12777@nevyn.them.org>

Daniel Jacobowitz wrote:
> On Wed, Mar 03, 2004 at 08:01:58AM +0200, Eli Zaretskii wrote:
> 
>>>Date: Tue, 02 Mar 2004 16:14:35 -0800
>>>From: George Anzinger <george@mvista.com>
>>>
>>>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.
>>
>>Can you explain why GDB should know about this?  The user could
>>always "up" manually or via the GDB's scripting language, right?
>>
>>As I see it, the situation is analogous to when you, e.g., attach GDB
>>to a running process, and the backtrace shows that it is stuck in
>>some uninteresting system call.  The very next thing to do is either
>>"up" or step the program until it winds up in some application code
>>that _is_ interesting.  We don't request GDB to show the application
>>code automagically, do we?
> 
> 
> The interesting thing about George's situation is that there's a lot of
> threads (basically, all but one of them) that we know in advance will
> be stuck in context switching code.  One of the nice things about info
> threads is that it shows you the current frame for all your threads;
> but in this case, that's not really very interesting information.
> 
> If we could find out where those threads were _before_ they switched
> out, now, that would make for an interesting overview.

Also, I am not apposed to a macro solution.  But, as far as I know the macros 
are a bit weak.  For example, the info thread command lists the thread number, 
pid, and an info field (which in my case is the task name from the kernel task 
struct).  So how would a macro keep this info intact and display it along with 
the "up" result on the same line?  In my thoughts on this I have considered a 
maintaince request to the host which would return the pid and the info field, ....

I also wonder how to determine, when stepping through the threads, that that was 
the last one.  As far as I know the top thread number is not available as a $var 
(but that would be nice for other macros as well).


> 

-- 
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


  parent reply	other threads:[~2004-03-03 18:40 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
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 [this message]
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=4046267E.1080808@mvista.com \
    --to=george@mvista.com \
    --cc=cagney@gnu.org \
    --cc=drow@mvista.com \
    --cc=eliz@elta.co.il \
    --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