From: Pedro Alves <pedro@palves.net>
To: Andrew Burgess <aburgess@redhat.com>,
gdb-patches@sourceware.org, Eli Zaretskii <eliz@gnu.org>
Subject: Re: [PATCH 03/12] Document "E.MESSAGE" RSP errors
Date: Fri, 26 Apr 2024 20:02:22 +0100 [thread overview]
Message-ID: <91568db8-32c2-42e0-b34f-8acb3f93cee1@palves.net> (raw)
In-Reply-To: <3b156aac-556b-47eb-a1c7-f20071aa9a8f@palves.net>
[Adding Eli.]
AFAICT, this is the only patch left in the series that needs an OK.
Any comments on the updated documentation change below?
Pedro Alves
On 2024-04-22 20:04, Pedro Alves wrote:
> On 2024-04-22 09:50, Andrew Burgess wrote:
>
>>> diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
>>> index 57260a5b2fa..d6184d52841 100644
>>> --- a/gdb/doc/gdb.texinfo
>>> +++ b/gdb/doc/gdb.texinfo
>>> @@ -42557,6 +42557,10 @@ number. In almost all cases, the protocol does not specify the
>>> meaning of the error numbers; @value{GDBN} usually ignores the
>>> numbers, or displays them to the user without further interpretation.
>>>
>>> +@item @samp{E.@var{message}}
>>> +An error has occurred; @var{message} is the textual error message,
>>> +encoded in @sc{ascii}.
>>
>> I think we should document here that the 'qRcmd' and 'm' packets don't
>> accept this reply format.
>>
>> Alexandra Hájková has a patch series which has not been posted yet which
>> will extend these packets in a backward compatible way so that E.message
>> can be used, but until that arrives we should probably document this
>> limitation.
>
> Done, see updated patch below. (See the bottom of the new commit log.)
>
> Not sure when we'd want to make GDB print the error for the 'm' packet,
> though. Currently it just returns TARGET_XFER_E_IO up to the caller.
>
> I noticed a few packets were documenting an "E.errtext" response,
> which I now removed in this version. Then "E.errtext" seemed more
> descriptive than "E.message", so I switched to that too.
>
>
> From 36ef5ca67f515039bfa68d2fb2515f181629a24f Mon Sep 17 00:00:00 2001
> From: Pedro Alves <pedro@palves.net>
> Date: Thu, 18 Apr 2024 20:22:36 +0100
> Subject: [PATCH] Document "E.MESSAGE" RSP errors
>
> For many years, GDB has accepted a "E.MESSAGE" error response, in
> addition to "E NN". For many packets, GDB strips the "E." before
> giving the error message to the user. For others, GDB does not strip
> the "E.", but still understands that it is an error, as it starts with
> "E", and either prints the whole string, or ignores it and just
> mentions an error occured (same as for "E NN").
>
> This has been the case for as long as I remember. Now that I check, I
> see that it's been there since 2006 (commit a76d924dffcb, also here:
> https://sourceware.org/pipermail/gdb-patches/2006-September/047286.html).
> All along, I actually thought it was documented. Turns out it wasn't.
>
> This commit documents it, in the new "Standard Replies" section, near
> where we document "E NN".
>
> The original version of this 3-patch documentation series was a single
> CodeSourcery patch that documented the textual error as
> "E.NAME.MESSAGE", with MESSAGE being 8-bit binary encoded. But I
> think the ship has sailed for that. GDBserver has been sending error
> messages with more than one "." for a long while, and with no binary
> encoding. Still, I've preserved the "Co-Authored-By" list of the
> original larger patch.
>
> The 'qRcmd' and 'm' commands are exceptions and do not accept this
> reply format. The top of the "Standard Replies" section already says:
>
> "All commands support these, except as noted in the individual
> command descriptions."
>
> So this adds a note to the description of 'qRcmd' and 'm', explicitly
> stating that they do not support this error reply format.
>
> Change-Id: Ie4fee3d00d82ede39e439bf162e8cb7485532fd8
> Co-Authored-By: Jim Blandy <jimb@codesourcery.com>
> Co-Authored-By: Mike Wrighton <mike_wrighton@mentor.com>
> Co-Authored-By: Nathan Sidwell <nathan@codesourcery.com>
> Co-Authored-By: Hafiz Abid Qadeer <abidh@codesourcery.com>
> ---
> gdb/doc/gdb.texinfo | 23 +++++++++++++----------
> 1 file changed, 13 insertions(+), 10 deletions(-)
>
> diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
> index 9781ce76226..f55ada29e9c 100644
> --- a/gdb/doc/gdb.texinfo
> +++ b/gdb/doc/gdb.texinfo
> @@ -42559,6 +42559,11 @@ number. In almost all cases, the protocol does not specify the
> meaning of the error numbers; @value{GDBN} usually ignores the
> numbers, or displays them to the user without further interpretation.
>
> +@anchor{textual error reply}
> +@item @samp{E.@var{errtext}}
> +An error has occurred; @var{errtext} is the textual error message,
> +encoded in @sc{ascii}.
> +
> @end table
>
> @node Packets
> @@ -42885,6 +42890,10 @@ The reply may contain fewer addressable memory units than requested if the
> server was able to read only part of the region of memory.
> @end table
>
> +Unlike most packets, this packet does not support
> +@samp{E.@var{errtext}}-style textual error replies (@pxref{textual
> +error reply}).
> +
> @item M @var{addr},@var{length}:@var{XX@dots{}}
> @cindex @samp{M} packet
> Write @var{length} addressable memory units starting at address @var{addr}
> @@ -44399,6 +44408,10 @@ A command response with no output.
> A command response with the hex encoded output string @var{OUTPUT}.
> @end table
>
> +Unlike most packets, this packet does not support
> +@samp{E.@var{errtext}}-style textual error replies (@pxref{textual
> +error reply}).
> +
> (Note that the @code{qRcmd} packet's name is separated from the
> command by a @samp{,}, not a @samp{:}, contrary to the naming
> conventions above. Please don't use this packet as a model for new
> @@ -45455,8 +45468,6 @@ Reply:
> @table @samp
> @item OK
> Branch tracing has been enabled.
> -@item E.errtext
> -A badly formed request or an error was encountered.
> @end table
>
> @item Qbtrace:pt
> @@ -45466,8 +45477,6 @@ Reply:
> @table @samp
> @item OK
> Branch tracing has been enabled.
> -@item E.errtext
> -A badly formed request or an error was encountered.
> @end table
>
> @item Qbtrace:off
> @@ -45477,8 +45486,6 @@ Reply:
> @table @samp
> @item OK
> Branch tracing has been disabled.
> -@item E.errtext
> -A badly formed request or an error was encountered.
> @end table
>
> @item Qbtrace-conf:bts:size=@var{value}
> @@ -45489,8 +45496,6 @@ Reply:
> @table @samp
> @item OK
> The ring buffer size has been set.
> -@item E.errtext
> -A badly formed request or an error was encountered.
> @end table
>
> @item Qbtrace-conf:pt:size=@var{value}
> @@ -45501,8 +45506,6 @@ Reply:
> @table @samp
> @item OK
> The ring buffer size has been set.
> -@item E.errtext
> -A badly formed request or an error was encountered.
> @end table
>
> @end table
>
> base-commit: 0e6747d2a638693ad2f20e7929c8364913c87279
> prerequisite-patch-id: 69a7241ff790954e07942cd212971bcfaa8f3a08
> prerequisite-patch-id: b398b6e111b68e06adccda7d9e016ebe39b5fd35
next prev parent reply other threads:[~2024-04-26 19:02 UTC|newest]
Thread overview: 55+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-04-19 15:13 [PATCH 00/12] Fix attach/run failure handling - gdbserver & Windows, document "E.MESSAGE" RSP errors, more Pedro Alves
2024-04-19 15:13 ` [PATCH 01/12] Document conventions for describing packet syntax Pedro Alves
2024-04-19 15:25 ` Eli Zaretskii
2024-04-19 15:42 ` Eli Zaretskii
2024-04-22 19:10 ` Pedro Alves
2024-04-22 19:01 ` Pedro Alves
2024-04-22 19:44 ` Eli Zaretskii
2024-04-19 15:13 ` [PATCH 02/12] Centralize documentation of error and empty RSP responses Pedro Alves
2024-04-19 15:36 ` Eli Zaretskii
2024-04-19 15:42 ` Eli Zaretskii
2024-04-22 19:00 ` Pedro Alves
2024-04-22 19:42 ` Eli Zaretskii
2024-04-19 15:13 ` [PATCH 03/12] Document "E.MESSAGE" RSP errors Pedro Alves
2024-04-19 15:37 ` Eli Zaretskii
2024-04-22 8:50 ` Andrew Burgess
2024-04-22 19:04 ` Pedro Alves
2024-04-26 19:02 ` Pedro Alves [this message]
2024-04-26 19:18 ` Eli Zaretskii
2024-04-29 13:42 ` Andrew Burgess
2024-04-19 15:13 ` [PATCH 04/12] Windows: Fix run/attach hang after bad run/attach Pedro Alves
2024-04-19 18:35 ` Tom Tromey
2024-04-19 15:13 ` [PATCH 05/12] Fix "run" failure handling with GDBserver Pedro Alves
2024-04-19 18:41 ` Tom Tromey
2024-04-19 15:13 ` [PATCH 06/12] Improve vRun error reporting Pedro Alves
2024-04-19 18:43 ` Tom Tromey
2024-04-22 11:32 ` Alexandra Petlanova Hajkova
2024-04-19 15:13 ` [PATCH 07/12] Fix "attach" failure handling with GDBserver Pedro Alves
2024-04-19 18:47 ` Tom Tromey
2024-04-19 15:13 ` [PATCH 08/12] gdbserver: Fix vAttach response when attaching is not supported Pedro Alves
2024-04-19 18:48 ` Tom Tromey
2024-04-19 15:13 ` [PATCH 09/12] gdb_target_is_native -> gdb_protocol_is_native Pedro Alves
2024-04-19 18:50 ` Tom Tromey
2024-05-09 8:47 ` Bernd Edlinger
2024-05-09 9:47 ` Pedro Alves
2024-05-09 11:54 ` Bernd Edlinger
2024-05-09 12:05 ` Pedro Alves
2024-05-09 13:19 ` Bernd Edlinger
2024-05-09 13:31 ` Pedro Alves
2024-05-09 15:01 ` Bernd Edlinger
2024-05-09 15:49 ` Pedro Alves
2024-05-09 18:44 ` Bernd Edlinger
2024-05-10 10:52 ` [pushed] gdb sim testing, set gdb_protocol to "sim" Pedro Alves
2024-04-22 8:25 ` [PATCH 09/12] gdb_target_is_native -> gdb_protocol_is_native Aktemur, Tankut Baris
2024-04-23 12:33 ` Pedro Alves
2024-04-19 15:13 ` [PATCH 10/12] gdb_target_is_remote -> gdb_protocol_is_remote Pedro Alves
2024-04-19 18:56 ` Tom Tromey
2024-04-23 12:30 ` Pedro Alves
2024-04-22 8:30 ` Aktemur, Tankut Baris
2024-04-23 12:47 ` Pedro Alves
2024-04-24 13:48 ` Aktemur, Tankut Baris
2024-04-19 15:13 ` [PATCH 11/12] Eliminate gdb_is_target_remote / gdb_is_target_native & friends Pedro Alves
2024-04-19 18:57 ` Tom Tromey
2024-04-19 15:13 ` [PATCH 12/12] Fix gdb.base/attach.exp --pid test skipping on native-extended-gdbserver Pedro Alves
2024-04-19 18:59 ` Tom Tromey
2024-04-26 20:25 ` [PATCH 00/12] Fix attach/run failure handling - gdbserver & Windows, document "E.MESSAGE" RSP errors, more Pedro Alves
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=91568db8-32c2-42e0-b34f-8acb3f93cee1@palves.net \
--to=pedro@palves.net \
--cc=aburgess@redhat.com \
--cc=eliz@gnu.org \
--cc=gdb-patches@sourceware.org \
/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).