gdb: Document vMustReplyEmpty remote packet
authorAndrew Burgess <andrew.burgess@embecosm.com>
Mon, 15 May 2017 09:11:57 +0000 (10:11 +0100)
committerAndrew Burgess <andrew.burgess@embecosm.com>
Mon, 22 May 2017 19:31:11 +0000 (20:31 +0100)
Add mention of the vMustReplyEmpty to the remote serial protocol
documentation.  It is important that this packet be treated in the same
fashion as any other unknown 'v' packet, and I have tried to reflect
this in the description of the packet, it is not simply the case that we
_must_ return the empty string for this packet.

As the intention is that we should treat this packet as unknown then an
argument could be made that we should not document it, however, for
someone implementing a gdbserver from scratch, seeing an undocumented
packet arrive from gdb is confusing, and will probably cause them to
have to read the code in order to check how this packet should be
handled, which is not ideal.

gdb/doc/ChangeLog:

* gdb.texinfo (Packets): Document vMustReplyEmpty packet.

gdb/doc/ChangeLog
gdb/doc/gdb.texinfo

index 8afb2e5b443a8c973a3278855ade5f22a06c23f2..000f3c813d7c9993631ce689ddeaaf7c8f3a8a1d 100644 (file)
@@ -1,3 +1,7 @@
+2017-05-22  Andrew Burgess  <andrew.burgess@embecosm.com>
+
+       * gdb.texinfo (Packets): Document vMustReplyEmpty packet.
+
 2017-05-01  Tim Wiederhake  <tim.wiederhake@intel.com>
 
        * python.texi (Recording in Python): Factor out the documentation of
index f2e615660edd45e28ed8d034dc530c63d5733a45..9fb70f6d2aeb95881ba885482971001ade4e5938 100644 (file)
@@ -35827,6 +35827,19 @@ for an error
 for success
 @end table
 
+@item vMustReplyEmpty
+@cindex @samp{vMustReplyEmpty} packet
+The correct reply to an unknown @samp{v} packet is to return the empty
+string, however, some older versions of @command{gdbserver} would
+incorrectly return @samp{OK} for unknown @samp{v} packets.
+
+The @samp{vMustReplyEmpty} is used as a feature test to check how
+@command{gdbserver} handles unknown packets, it is important that this
+packet be handled in the same way as other unknown @samp{v} packets.
+If this packet is handled differently to other unknown @samp{v}
+packets then it is possile that @value{GDBN} may run into problems in
+other areas, specifically around use of @samp{vFile:setfs:}.
+
 @item vRun;@var{filename}@r{[};@var{argument}@r{]}@dots{}
 @cindex @samp{vRun} packet
 Run the program @var{filename}, passing it each @var{argument} on its