From: Quality Quorum <qqi@theworld.com>
To: Andrew Cagney <ac131313@cygnus.com>
Cc: Daniel Jacobowitz <drow@mvista.com>, <gdb@sources.redhat.com>
Subject: Re: RFC: Two small remote protocol extensions
Date: Thu, 02 May 2002 13:13:00 -0000 [thread overview]
Message-ID: <Pine.SGI.4.40.0205021600151.791800-100000@shell01.TheWorld.com> (raw)
In-Reply-To: <3CD15D5A.7020308@cygnus.com>
On Thu, 2 May 2002, Andrew Cagney wrote:
> > In making remote thread debugging work on GNU/Linux, I needed two additions
> > to the remote protocol. Neither is strictly necessary, but both are useful,
> > IMHO.
> >
> > They are:
> >
> > - two new replies to the continue/step packets, 'n' and 'x'. They
> > indicate thread creation and death respectively, and are asynchronous;
> > the target is not stopped when they are sent.
>
> No.
>
> Telling GDB of thread create/delete events is a good idea, but please,
> do it synchronously (we've already got the ``O'' packet and that is bad
> enough).
>
> Have you tried:
> T00Thread....?
> for the create event. (signal 0 is loosely defined as a non-event).
>
> > - A new 'Hs' packet, paralleling Hc and Hg. This sets the "step" thread.
>
> I don't know.
>
> What is the difference between Hc and Hs? BTW, Hg is orthogonal to the
> step/continue problem. Anyway, I suspect Michael knows more than most
> on this front and this needs very careful consideration.
There some more annoying things in gdb protocol which require careful
consideration:
1. zbreaks support by kind - how gdb can dynamically learn that particular
kind of zbreak is not supported by target
2. zbreaks support by count - how gdb can dynamically learn that
it is trying to set one zbreak too many.
3. reconnect - how target could learn that it got a connect from
a new session so it has to forget about all zbreaks.
4. exact meaning of Hg - last time I checked it was related to registers
5. exact meaning of Hc - last time I check it did not mean anything
because gdb itself was not able to support per thread breakpoints
6. gdb should be able to switch dynamically to soft-stepping if
target does not support steps
7. Have configurable option to remove breakpoints before doing steps
8. Obsolete 'is-thread-alive'.
Can somebody write a draft spec so we can discuss it as a whole,
naturally, if you want you can start from one written by me but it
is completely unnesessary - just clean-up the thing to truly usable
state.
> Andrew
Thanks,
Aleksey
>
> > Basically, despite a comment that it didn't work earlier on this list, I
> > discovered that lin-lwp does correctly honor `set scheduler-locking'. It
> > works by controlling which threads are resumed by resume_ptid. However,
> > for stepping, inferior_ptid is also consulted. That way all threads can
> > be resumed but a particular thread stepped. The `thread <N>' command
> > changes the thread to be stepped.
> >
> > resume_ptid is communicated to the remote host. inferior_ptid is not
> > necessarily the same as general_ptid, however - after information requests
> > like `thread apply all bt', for instance.
>
> Yes. Hg has nothing to do with Hc.
>
> > Reading over the above, I suppose I could use general_ptid for this instead,
> > with a slightly smaller patch to remote_resume to guarantee that it is set.
> > That makes a little more sense than my current approach. Still needs a
> > documentation patch to clarify it; I intend to fix up most of the protocol
> > specification (which is woefully out of date, and hideous in texinfo) as
> > soon as I get a chance.
> >
> > Any thoughts on the two above changes?
> >
> > -- Daniel Jacobowitz Carnegie Mellon University MontaVista Software Debian GNU/Linux Developer
>
>
next prev parent reply other threads:[~2002-05-02 20:13 UTC|newest]
Thread overview: 53+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-05-01 19:25 Daniel Jacobowitz
2002-05-02 8:38 ` Andrew Cagney
2002-05-02 8:52 ` Daniel Jacobowitz
2002-05-02 9:39 ` Andrew Cagney
2002-05-02 12:14 ` Daniel Jacobowitz
2002-05-02 12:22 ` Kevin Buettner
2002-05-02 12:34 ` Daniel Jacobowitz
2002-05-02 13:13 ` Andrew Cagney
2002-05-02 14:09 ` Daniel Jacobowitz
2002-05-03 11:24 ` Andrew Cagney
2002-05-03 14:28 ` Daniel Jacobowitz
2002-05-03 15:18 ` Andrew Cagney
2002-05-03 15:22 ` Daniel Jacobowitz
2002-05-04 19:59 ` Andrew Cagney
2002-05-02 13:13 ` Quality Quorum [this message]
2002-05-02 14:13 ` Daniel Jacobowitz
2002-05-03 13:07 ` Andrew Cagney
2002-08-16 7:30 ` Daniel Jacobowitz
2002-08-16 7:42 ` Andrew Cagney
2002-08-16 7:52 ` Daniel Jacobowitz
2002-08-16 8:21 ` Andrew Cagney
2002-08-22 19:23 ` Andrew Cagney
2002-08-22 19:36 ` Daniel Jacobowitz
2002-08-23 7:24 ` Quality Quorum
2002-08-23 7:26 ` Daniel Jacobowitz
2002-08-23 7:49 ` Quality Quorum
2002-08-23 8:57 ` Andrew Cagney
2002-08-23 11:16 ` Quality Quorum
2002-08-23 12:39 ` Andrew Cagney
2002-08-23 13:10 ` Quality Quorum
2002-08-27 20:23 ` Andrew Cagney
2002-08-28 8:31 ` Quality Quorum
2002-08-28 9:44 ` Andrew Cagney
2002-08-28 9:49 ` Daniel Jacobowitz
2002-08-22 21:08 ` Andrew Cagney
2002-08-23 5:44 ` Daniel Jacobowitz
2002-08-23 12:10 ` Andrew Cagney
2002-08-23 12:53 ` Andrew Cagney
2002-08-23 13:15 ` Daniel Jacobowitz
2002-08-27 21:07 ` Andrew Cagney
2002-08-28 6:33 ` Daniel Jacobowitz
2002-09-25 8:51 ` Daniel Jacobowitz
2002-09-25 11:17 ` Andrew Cagney
2002-09-26 18:39 ` Andrew Cagney
2002-09-26 18:48 ` Andrew Cagney
2003-06-29 7:51 ` Daniel Jacobowitz
2003-09-03 23:41 ` Andrew Cagney
2003-09-17 15:51 ` Daniel Jacobowitz
2003-09-17 16:19 ` Andrew Cagney
2003-09-17 16:23 ` Daniel Jacobowitz
2003-09-22 0:27 ` Andrew Cagney
2003-09-22 1:01 ` Daniel Jacobowitz
2003-09-22 3:02 ` Andrew Cagney
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=Pine.SGI.4.40.0205021600151.791800-100000@shell01.TheWorld.com \
--to=qqi@theworld.com \
--cc=ac131313@cygnus.com \
--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