From: Reuben Thomas <rrt@sc3d.org>
To: "Maciej W. Rozycki" <macro@wdc.com>
Cc: Christo Crause <christo.crause@gmail.com>,
Reuben Thomas via Gdb <gdb@sourceware.org>
Subject: Re: Remote protocol question: the documentation says '?' is not required, but maybe it is?
Date: Tue, 21 Jul 2020 21:48:50 +0100 [thread overview]
Message-ID: <CAOnWdohZu2fCR=_fmVhHTP2JPRpstuaoGTfVzA+BYWiKWKvjoA@mail.gmail.com> (raw)
In-Reply-To: <CAOnWdogef52=wOvXxEg1ddtOSvv-uaGhuRxVXJXan4je6GF=0w@mail.gmail.com>
On Tue, 21 Jul 2020 at 21:26, Reuben Thomas <rrt@sc3d.org> wrote:
> On Tue, 21 Jul 2020 at 21:24, Reuben Thomas <rrt@sc3d.org> wrote:
>
>> On Tue, 21 Jul 2020 at 20:34, Maciej W. Rozycki <macro@wdc.com> wrote:
>>
>>> On Tue, 21 Jul 2020, Reuben Thomas wrote:
>>>
>>> > > FYI, I do believe `?' is indeed mandatory, as GDB needs to figure
>>> out the
>>> > > initial state of the remote target as it has connected to it, and
>>> there is
>>> > > no other way.
>>> >
>>> > It seems to be more complicated than that. In principle, '?' isn't
>>> needed
>>> > in principle to figure out the initial state: the T packet, or in my
>>> > current case, the S packet tells GDB the signal, and yet GDB still
>>> asks for
>>> > it again with '?'. The signal that caused the remote to halt is not
>>> going
>>> > to change until the next 'c', so there's no need for GDB to ask for it
>>> > again; and yet it does.
>>>
>>
> As I mentioned earlier, gdb discards this first 'T' packet, so that
> explains why it needs to send '?', even in principle. But that doesn't seem
> to be relevant, as gdb always sends '?' at the start of a conversation.
>
Just to eliminate this source of potential error, I adjusted my stub so
that when it first connects to gdb it does not send a packet. This does not
change the exchange with gdb in any way, except that the first packet from
the stub is not sent.
--
https://rrt.sc3d.org
next prev parent reply other threads:[~2020-07-21 20:49 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-19 19:08 Reuben Thomas
2020-07-21 10:22 ` Christo Crause
2020-07-21 10:29 ` Reuben Thomas
2020-07-21 11:33 ` Maciej W. Rozycki
2020-07-21 16:35 ` Christo Crause
2020-07-21 18:51 ` Reuben Thomas
2020-07-21 19:34 ` Maciej W. Rozycki
2020-07-21 20:24 ` Reuben Thomas
2020-07-21 20:26 ` Reuben Thomas
2020-07-21 20:48 ` Reuben Thomas [this message]
2020-07-21 21:19 ` Maciej W. Rozycki
2020-07-21 21:23 ` Reuben Thomas
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='CAOnWdohZu2fCR=_fmVhHTP2JPRpstuaoGTfVzA+BYWiKWKvjoA@mail.gmail.com' \
--to=rrt@sc3d.org \
--cc=christo.crause@gmail.com \
--cc=gdb@sourceware.org \
--cc=macro@wdc.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;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).