summaryrefslogtreecommitdiffstats
path: root/lldb/docs
diff options
context:
space:
mode:
authorRavitheja Addepally <ravitheja.addepally@intel.com>2017-07-12 11:15:34 +0000
committerRavitheja Addepally <ravitheja.addepally@intel.com>2017-07-12 11:15:34 +0000
commitdab1d5f3cd6000da8b1e6bb1110c8788ac6a8aa1 (patch)
treee7a430483d8f998b172f64e21cdbea56b1512364 /lldb/docs
parentd92e1286ed020d3ac7def410d91ecbb117da7410 (diff)
downloadbcm5719-llvm-dab1d5f3cd6000da8b1e6bb1110c8788ac6a8aa1.tar.gz
bcm5719-llvm-dab1d5f3cd6000da8b1e6bb1110c8788ac6a8aa1.zip
Adding Support for Error Strings in Remote Packets
Summary: This patch adds support for sending strings along with error codes in the reply packets. The implementation is based on the feedback recieved in the lldb-dev mailing list. The patch also adds an extra packet for the client to query if the server has the capability to provide strings along with error replys. Reviewers: labath, jingham, sas, lldb-commits, clayborg Reviewed By: labath, clayborg Differential Revision: https://reviews.llvm.org/D34945 llvm-svn: 307768
Diffstat (limited to 'lldb/docs')
-rw-r--r--lldb/docs/lldb-gdb-remote.txt45
1 files changed, 36 insertions, 9 deletions
diff --git a/lldb/docs/lldb-gdb-remote.txt b/lldb/docs/lldb-gdb-remote.txt
index a4427a70444..0000738b556 100644
--- a/lldb/docs/lldb-gdb-remote.txt
+++ b/lldb/docs/lldb-gdb-remote.txt
@@ -126,6 +126,32 @@ read packet: $OK#00
This packet can be sent one or more times _prior_ to sending a "A" packet.
//----------------------------------------------------------------------
+// "QEnableErrorStrings"
+//
+// BRIEF
+// This packet enables reporting of Error strings in remote packet
+// replies from the server to client. If the server supports this
+// feature, it should send an OK response. The client can expect the
+// following error replies if this feature is enabled in the server ->
+//
+// EXX;AAAAAAAAA
+//
+// where AAAAAAAAA will be a hex encoded ASCII string.
+// XX is hex encoded byte number.
+//
+// It must be noted that even if the client has enabled reporting
+// strings in error replies, it must not expect error strings to all
+// error replies.
+//
+// PRIORITY TO IMPLEMENT
+// Low. Only needed if the remote target wants to provide strings that
+// are human readable along with an error code.
+//----------------------------------------------------------------------
+
+send packet: $QErrorStringInPacketSupported
+read packet: $OK#00
+
+//----------------------------------------------------------------------
// "QSetSTDIN:<ascii-hex-path>"
// "QSetSTDOUT:<ascii-hex-path>"
// "QSetSTDERR:<ascii-hex-path>"
@@ -250,11 +276,12 @@ read packet: OK
//
// Each tracing instance is identified by a trace id which is returned
// as the reply to this packet. In case the tracing failed to begin an
-// error code is returned instead.
+// error code along with a hex encoded ASCII message is returned
+// instead.
//----------------------------------------------------------------------
send packet: jTraceStart:{"type":<type>,"buffersize":<buffersize>}]
-read packet: <trace id>/E<error code>
+read packet: <trace id>/E<error code>;AAAAAAAAA
//----------------------------------------------------------------------
// jTraceStop:
@@ -283,12 +310,12 @@ read packet: <trace id>/E<error code>
// to stop tracing on that thread.
// ========== ====================================================
//
-// An OK response is sent in case of success else an error code is
-// returned.
+// An OK response is sent in case of success else an error code along
+// with a hex encoded ASCII message is returned.
//----------------------------------------------------------------------
send packet: jTraceStop:{"traceid":<trace id>}]
-read packet: <OK response>/E<error code>
+read packet: <OK response>/E<error code>;AAAAAAAAA
//----------------------------------------------------------------------
// jTraceBufferRead:
@@ -317,11 +344,11 @@ read packet: <OK response>/E<error code>
// ========== ====================================================
//
// The trace data is sent as raw binary data if the read was successful
-// else an error code is sent.
+// else an error code along with a hex encoded ASCII message is sent.
//----------------------------------------------------------------------
send packet: jTraceBufferRead:{"traceid":<trace id>,"offset":<byteoffset>,"buffersize":<byte_count>}]
-read packet: <binary trace data>/E<error code>
+read packet: <binary trace data>/E<error code>;AAAAAAAAA
//----------------------------------------------------------------------
// jTraceMetaRead:
@@ -359,11 +386,11 @@ read packet: <binary trace data>/E<error code>
// gdb-remote protocol has certain limitations, binary escaping
// convention is used.
// In case the trace instance with the <trace id> was not found, an
-// error code is returned.
+// error code along with a hex encoded ASCII message is returned.
//----------------------------------------------------------------------
send packet: jTraceConfigRead:{"traceid":<trace id>}
-read packet: {"conf1":<conf1>,"conf2":<conf2>,"params":{"paramName":paramValue}]}];/E<error code>
+read packet: {"conf1":<conf1>,"conf2":<conf2>,"params":{"paramName":paramValue}]}];/E<error code>;AAAAAAAAA
//----------------------------------------------------------------------
// "qRegisterInfo<hex-reg-id>"
OpenPOWER on IntegriCloud