This is the mail archive of the
gdb@sources.redhat.com
mailing list for the GDB project.
[remote protocol] Allow qSymbol response to continue packets
- From: Daniel Jacobowitz <drow at false dot org>
- To: gdb at sources dot redhat dot com
- Date: Sat, 6 Mar 2004 18:52:53 -0500
- Subject: [remote protocol] Allow qSymbol response to continue packets
I'd like to propose the attached as an extension to the remote protocol.
The code implementing this change is here:
http://sources.redhat.com/ml/gdb-patches/2004-02/msg00000.html
>From my original post:
As Amit Kale mentioned in December, to support NPTL gdbserver needs to
look up symbols during remote_wait. The existing qSymbol model assumes
that only at objfile loads (i.e. during td_ta_new) do we need to look up
symbols; NPTL looks up symbols lazily when it needs them, which includes
at the creation of the first child thread. This patch (which, I know,
needs a matching change for the manual) allows qSymbol: queries as a
response to remote_wait, in much the same way as the file I/O protocol.
So here's the manual page and a description of the change. Thoughts?
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer
2004-03-06 Daniel Jacobowitz <drow@mvista.com>
* gdb.texinfo (Stop Reply Packets): Define qSymbol response.
Index: gdb.texinfo
===================================================================
RCS file: /cvs/src/src/gdb/doc/gdb.texinfo,v
retrieving revision 1.199
diff -u -p -r1.199 gdb.texinfo
--- gdb.texinfo 29 Feb 2004 02:57:24 -0000 1.199
+++ gdb.texinfo 6 Mar 2004 23:48:15 -0000
@@ -20267,6 +20267,15 @@ packet from the target. The latest @sam
@samp{s} action is expected to be continued.
@xref{File-I/O remote protocol extension}, for more details.
+@item qSymbol:@var{sym_name}
+
+The target is requesting the address of a symbol. @value{GDBN} replies with
+a @code{qSymbol} packet providing the address of @var{sym_name} if available
+(@pxref{General Query Packets}).
+
+As with @code{F}, this response does not terminate the current resume
+action. @value{GDBN} continues waiting for another stop packet.
+
@end table
@node General Query Packets