[3/4] Document RSP support for Linux exec events

Message ID 53850386.1040205@codesourcery.com
State New, archived
Headers

Commit Message

Don Breazeal May 27, 2014, 9:28 p.m. UTC
  On 5/24/2014 12:20 AM, Eli Zaretskii wrote:
>> From: Don Breazeal <donb@codesourcery.com>
>> Date: Fri, 23 May 2014 15:49:33 -0700
>>
>> This patch adds documentation of the new RSP support for exec events.
> 
> Thanks.
> 
>> +@cindex exec events, remote reply
>> +@item exec
>> +The packet indicates that @code{execve} was called, and @var{r} is the
>> +absolute pathname of the file that was executed, in hex.
> 
> Please use "file name".  GNU coding standards frown on using
> "pathname" in this context.
OK.

> 
>>                                                            This is
>> +only applicable to certain targets.
> 
> What is "only applicable to certain targets", the packet or the fact
> that R is the file name of the exec'ed process?
Point taken.  It's the packet.

> 
> I also think you should mention the fact that gdbserver supports
> follow-exec-mode in the "Forks" node, as the text there does sound as
> if this is only supported in native debugging.
OK.

Updated patch follows below.
Thanks for checking this over,
--Don

gdb/
2014-05-27  Don Breazeal  <donb@codesourcery.com>

	* NEWS: Mention RSP Stop Reply Packet, new stop reason 'exec'.
	Mention gdbserver support for exec events on Linux.

doc/
2014-05-27  Don Breazeal  <donb@codesourcery.com>

	* gdb.texinfo (Stop Reply Packets): Document RSP support
	and gdbserver support for remote Linux exec events.

---
 gdb/NEWS            |    6 ++++++
 gdb/doc/gdb.texinfo |    9 ++++++++-
 2 files changed, 14 insertions(+), 1 deletions(-)

 @kindex set follow-exec-mode
@@ -34589,6 +34590,12 @@ The packet indicates that the loaded libraries
have changed.
 @value{GDBN} should use @samp{qXfer:libraries:read} to fetch a new
 list of loaded libraries.  @var{r} is ignored.

+@cindex exec events, remote reply
+@item exec
+The packet indicates that @code{execve} was called, and @var{r} is the
+absolute file name of the file that was executed, in hex.  This packet
+is only applicable to certain targets.
+
 @cindex replay log events, remote reply
 @item replaylog
 The packet indicates that the target cannot continue replaying
  

Comments

Eli Zaretskii May 28, 2014, 2:22 p.m. UTC | #1
> Date: Tue, 27 May 2014 14:28:38 -0700
> From: "Breazeal, Don" <donb@codesourcery.com>
> CC: gdb-patches@sourceware.org
> 
> On 5/24/2014 12:20 AM, Eli Zaretskii wrote:
> >> From: Don Breazeal <donb@codesourcery.com>
> >> Date: Fri, 23 May 2014 15:49:33 -0700
> >>
> Updated patch follows below.

Thanks, this is good to go in.
  

Patch

diff --git a/gdb/NEWS b/gdb/NEWS
index b23c8a0..ffe3520 100644
--- a/gdb/NEWS
+++ b/gdb/NEWS
@@ -69,6 +69,8 @@  maint ada show ignore-descriptive-types
      Timestamps can also be turned on with the
      "monitor set debug-format timestamps" command from GDB.

+  ** GDBserver on GNU/Linux now supports exec events (follow-exec-mode).
+
 * The 'record instruction-history' command now starts counting instructions
   at one.  This also affects the instruction ranges reported by the
   'record function-call-history' command when given the /i modifier.
@@ -103,6 +105,10 @@  qXfer:btrace:read's annex
   The qXfer:btrace:read packet supports a new annex 'delta' to read
   branch trace incrementally.

+T Stop Reply Packet's reason
+  The T stop reply packet supports a new stop reason, 'exec', signifying
+  that the specified inferior executed a call to execve.
+
 * Python Scripting

   ** Valid Python operations on gdb.Value objects representing
diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
index 6092ff4..efe7603 100644
--- a/gdb/doc/gdb.texinfo
+++ b/gdb/doc/gdb.texinfo
@@ -3141,7 +3141,8 @@  process, use the @code{file} command with the
parent executable name
 as its argument.  By default, after an @code{exec} call executes,
 @value{GDBN} discards the symbols of the previous executable image.
 You can change this behaviour with the @w{@code{set follow-exec-mode}}
-command.
+command.  This command is supported when connected to @code{gdbserver}
+using @kbd{target extended-remote} as well as in native mode.

 @table @code