Mirror of the gdb mailing list
 help / color / mirror / Atom feed
From: Marc Khouzam <marc.khouzam@ericsson.com>
To: "'Vladimir Prus'" <vladimir@codesourcery.com>,
	        "'gdb@sources.redhat.com'" 	<gdb@sources.redhat.com>
Subject: RE: [MI] Extending -list-thread-groups --available to show cores
Date: Mon, 09 Nov 2009 16:17:00 -0000	[thread overview]
Message-ID: <F7CE05678329534C957159168FA70DEC5158E02529@EUSAACMS0703.eamcs.ericsson.se> (raw)
In-Reply-To: <200911081804.31988.vladimir@codesourcery.com>

 

> -----Original Message-----
> From: gdb-owner@sourceware.org 
> [mailto:gdb-owner@sourceware.org] On Behalf Of Vladimir Prus
> Sent: Sunday, November 08, 2009 10:05 AM
> To: gdb@sources.redhat.com
> Subject: [MI] Extending -list-thread-groups --available to show cores
> 
> 
> Current GDB has a MI command -list-thread-groups to nagivate
> the hierarchy of the debugged thing. This command also the the
> --available option that cause GDB to report the processes that
> can be attached to, as opposed to processes currently being
> debugged.
> 
> We were recently asked to slightly extend the returned information
> to include the core where each thread runs. Such information is
> of little use for typical Linux application, since threads are
> migrated between cores. However, it's useful for both custom 
> Linux applications that specifically pin threads to specific cores,
> and for embedded systems. Therefore, I plan to add a new field
> to the thread information that is output by 
> -list-thread-groups --available, named 'core' that will give the
> number of the core. E.g.

I assume you didn't mean to restrict this output to the "--available"
form of "-list-thread-groups", but meant to say that it would affect
all forms of "-list-thread-groups", right?


> 	-list-thread-groups
> 	
> ^done,groups=[{id="17",type="process",pid="yyy",num_children="
> 2",cores=[1,2]}]

Nice.

> 	-list-thread-groups 17
> 	^done,threads=[{id="2",target-id="Thread 0xb7e14b90 
> (LWP 21257)",cores=[1]
> frame={level="0",addr="0xffffe410",func="__kernel_vsyscall",ar
> gs=[]},state="running"},

Also nice.
 	   
 
> Related to that, it would be somewhat inefficient to issue 
> -list-thread-groups
> for every avaialable process to discover the full list of 
> threads on specific
> core, so it would be nice to pass several thread groups, like so:
> 
> 	-list-thread-groups 17 18
> 	^done,groups=[{id="17", types="process", ..., 
>                    threads=[{id="2",target-id="Thread 
> 0xb7e14b90 (LWP 21257)",cores=[1]}]},
> 			      {id="18", types="process", ..., 

This is unclear to me.
I see that you are adding the details of the processes before each
process's list of threads.  I guess this is necessary because a
frontend will need to know which process the list of threads belong to,
since the will be multiple list of threads.
But how will that affect the ouput of 
-list-thread-groups 17
which currently does not show the details of the process?  I assume
it will also include the process info?
(BTW, is "types" in that output meant to be "type")


> Finally, we were asked to make the *stopped notification to 
> report the core on which
> the stop has happened, as additional field.

Valuable.

Interesting stuff!

Thanks

Marc


  reply	other threads:[~2009-11-09 14:25 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-11-09  1:36 Vladimir Prus
2009-11-09 16:17 ` Marc Khouzam [this message]
2009-11-09 16:25   ` Vladimir Prus
2009-11-09 16:42     ` Marc Khouzam
2009-11-09 17:20       ` Vladimir Prus
2009-11-09 17:33         ` Marc Khouzam
2009-11-09 20:02           ` Marc Khouzam
2009-11-16 14:52           ` Vladimir Prus
2009-11-16 17:55             ` Vladimir Prus
2009-11-17  7:45 ` Vladimir Prus
2009-11-17 13:49   ` Marc Khouzam
2009-11-19  6:44     ` Vladimir Prus
2009-11-19  7:11       ` Marc Khouzam

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=F7CE05678329534C957159168FA70DEC5158E02529@EUSAACMS0703.eamcs.ericsson.se \
    --to=marc.khouzam@ericsson.com \
    --cc=gdb@sources.redhat.com \
    --cc=vladimir@codesourcery.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