[v2,5/5] Extended-remote exec event docs

Message ID 1438298360-29594-6-git-send-email-donb@codesourcery.com
State New, archived
Headers

Commit Message

Don Breazeal July 30, 2015, 11:19 p.m. UTC
  This patch is unchanged from the previous version.  It was
reviewed and approved by Eli here:
https://sourceware.org/ml/gdb-patches/2015-07/msg00466.html
-----

This patch adds documentation of support for exec events on
extended-remote Linux targets.

Thanks,
--Don

gdb/
2015-07-30  Don Breazeal  <donb@codesourcery.com>

	* NEWS: Announce new remote packets for the exec-events
	feature and the exec-events feature.

gdb/doc/
2015-07-30  Don Breazeal  <donb@codesourcery.com>

	* gdb.texinfo (Remote Configuration): Add exec event
	feature to table of packet settings.
	(Stop Reply Packets): Add exec events to the list of stop
	reasons.
	(General Query Packets): Add exec events to tables of
	'gdbfeatures' and 'stub features' supported in the qSupported
	packet, as well as to the list containing stub feature
	details.

---
 gdb/NEWS            | 17 +++++++++++++++++
 gdb/doc/gdb.texinfo | 30 ++++++++++++++++++++++++++++++
 2 files changed, 47 insertions(+)
  

Comments

Eli Zaretskii July 31, 2015, 6:36 a.m. UTC | #1
> From: Don Breazeal <donb@codesourcery.com>
> Date: Thu, 30 Jul 2015 16:19:20 -0700
> 
> This patch is unchanged from the previous version.  It was
> reviewed and approved by Eli here:
> https://sourceware.org/ml/gdb-patches/2015-07/msg00466.html
> -----
> 
> This patch adds documentation of support for exec events on
> extended-remote Linux targets.
> 
> Thanks,
> --Don
> 
> gdb/
> 2015-07-30  Don Breazeal  <donb@codesourcery.com>
> 
> 	* NEWS: Announce new remote packets for the exec-events
> 	feature and the exec-events feature.
> 
> gdb/doc/
> 2015-07-30  Don Breazeal  <donb@codesourcery.com>
> 
> 	* gdb.texinfo (Remote Configuration): Add exec event
> 	feature to table of packet settings.
> 	(Stop Reply Packets): Add exec events to the list of stop
> 	reasons.
> 	(General Query Packets): Add exec events to tables of
> 	'gdbfeatures' and 'stub features' supported in the qSupported
> 	packet, as well as to the list containing stub feature
> 	details.

OK, with a single comment:

> +@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.

GNU coding standards frown on using "pathname" in this context; please
use "file name" instead.

Thanks.
  
Don Breazeal July 31, 2015, 5:06 p.m. UTC | #2
On 7/30/2015 11:36 PM, Eli Zaretskii wrote:
>> From: Don Breazeal <donb@codesourcery.com>
>> Date: Thu, 30 Jul 2015 16:19:20 -0700
>>
>> This patch is unchanged from the previous version.  It was
>> reviewed and approved by Eli here:
>> https://sourceware.org/ml/gdb-patches/2015-07/msg00466.html
>> -----
>>
>> This patch adds documentation of support for exec events on
>> extended-remote Linux targets.
>>
>> Thanks,
>> --Don
>>
>> gdb/
>> 2015-07-30  Don Breazeal  <donb@codesourcery.com>
>>
>> 	* NEWS: Announce new remote packets for the exec-events
>> 	feature and the exec-events feature.
>>
>> gdb/doc/
>> 2015-07-30  Don Breazeal  <donb@codesourcery.com>
>>
>> 	* gdb.texinfo (Remote Configuration): Add exec event
>> 	feature to table of packet settings.
>> 	(Stop Reply Packets): Add exec events to the list of stop
>> 	reasons.
>> 	(General Query Packets): Add exec events to tables of
>> 	'gdbfeatures' and 'stub features' supported in the qSupported
>> 	packet, as well as to the list containing stub feature
>> 	details.
> 
> OK, with a single comment:
> 
>> +@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.
> 
> GNU coding standards frown on using "pathname" in this context; please
> use "file name" instead.
> 
> Thanks.
> 
Thanks Eli.  I have made this change in my local copy.
--Don
  
Pedro Alves Aug. 13, 2015, 3:43 p.m. UTC | #3
On 07/31/2015 12:19 AM, Don Breazeal wrote:

> diff --git a/gdb/NEWS b/gdb/NEWS
> index 7ce9758..87e1ad4 100644
> --- a/gdb/NEWS
> +++ b/gdb/NEWS
> @@ -5,6 +5,23 @@
>  
>  * Support for tracepoints on aarch64-linux was added in GDBserver.
>  
> +* New remote packets
> +
> +exec stop reason
> +  Indicates that an exec system call was executed.
> +
> +exec-events feature in qSupported
> +  The qSupported packet allows GDB to request support for exec
> +  events using the new 'gdbfeature' exec-event, and the qSupported
> +  response can contain the corresponding 'stubfeature'.  Set and
> +  show commands can be used to display whether these features are enabled.

Could you please mention the new commands as well?  Look for "set remote " in
the NEWS file for examples.

Thanks,
Pedro Alves
  

Patch

diff --git a/gdb/NEWS b/gdb/NEWS
index 7ce9758..87e1ad4 100644
--- a/gdb/NEWS
+++ b/gdb/NEWS
@@ -5,6 +5,23 @@ 
 
 * Support for tracepoints on aarch64-linux was added in GDBserver.
 
+* New remote packets
+
+exec stop reason
+  Indicates that an exec system call was executed.
+
+exec-events feature in qSupported
+  The qSupported packet allows GDB to request support for exec
+  events using the new 'gdbfeature' exec-event, and the qSupported
+  response can contain the corresponding 'stubfeature'.  Set and
+  show commands can be used to display whether these features are enabled.
+
+* Extended-remote exec events
+
+  ** GDB now has support for exec events on extended-remote Linux targets.
+     For such targets with Linux kernels 2.5.46 and later, this enables
+     follow-exec-mode and exec catchpoints.
+
 *** Changes in GDB 7.10
 
 * Support for process record-replay and reverse debugging on aarch64*-linux*
diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
index 9e2ecd1..5970782 100644
--- a/gdb/doc/gdb.texinfo
+++ b/gdb/doc/gdb.texinfo
@@ -20022,6 +20022,10 @@  are:
 @tab @code{vfork stop reason}
 @tab @code{vfork}
 
+@item @code{exec-event-feature}
+@tab @code{exec stop reason}
+@tab @code{exec}
+
 @end multitable
 
 @node Remote Stub
@@ -35655,6 +35659,18 @@  appropriate @samp{qSupported} feature (@pxref{qSupported}).  The
 remote stub must also supply the appropriate @samp{qSupported} feature
 indicating support.
 
+@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.
+This packet is only applicable to targets that support exec events.
+
+This packet should not be sent by default; older @value{GDBN} versions
+did not support it.  @value{GDBN} requests it, by supplying an
+appropriate @samp{qSupported} feature (@pxref{qSupported}).  The
+remote stub must also supply the appropriate @samp{qSupported} feature
+indicating support.
+
 @end table
 
 @item W @var{AA}
@@ -36259,6 +36275,12 @@  This feature indicates whether @value{GDBN} supports vfork event
 extensions to the remote protocol.  @value{GDBN} does not use such
 extensions unless the stub also reports that it supports them by
 including @samp{vfork-events+} in its @samp{qSupported} reply.
+
+@item exec-events
+This feature indicates whether @value{GDBN} supports exec event
+extensions to the remote protocol.  @value{GDBN} does not use such
+extensions unless the stub also reports that it supports them by
+including @samp{exec-events+} in its @samp{qSupported} reply.
 @end table
 
 Stubs should ignore any unknown values for
@@ -36522,6 +36544,11 @@  These are the currently defined stub features and their properties:
 @tab @samp{-}
 @tab No
 
+@item @samp{exec-events}
+@tab No
+@tab @samp{-}
+@tab No
+
 @end multitable
 
 These are the currently defined stub features, in more detail:
@@ -36727,6 +36754,9 @@  The remote stub reports the @samp{fork} stop reason for fork events.
 The remote stub reports the @samp{vfork} stop reason for vfork events
 and vforkdone events.
 
+@item exec-events
+The remote stub reports the @samp{exec} stop reason for exec events.
+
 @end table
 
 @item qSymbol::