No functionality changes, mostly cleanup.

Cleaned up the Mutex::Locker and the ReadWriteLock classes a bit.

Also cleaned up the GDBRemoteCommunication class to not have so many packet functions. Used the "NoLock" versions of send/receive packet functions when possible for a bit of performance.



git-svn-id: https://llvm.org/svn/llvm-project/lldb/trunk@154458 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.cpp b/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.cpp
index 3fc9729..3f8677d 100644
--- a/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.cpp
+++ b/source/Plugins/Process/gdb-remote/GDBRemoteCommunicationServer.cpp
@@ -85,7 +85,7 @@
                                                         bool &quit)
 {
     StringExtractorGDBRemote packet;
-    if (WaitForPacketWithTimeoutMicroSeconds(packet, timeout_usec))
+    if (WaitForPacketWithTimeoutMicroSecondsNoLock (packet, timeout_usec))
     {
         const StringExtractorGDBRemote::ServerPacketType packet_type = packet.GetServerPacketType ();
         switch (packet_type)
@@ -178,7 +178,7 @@
 GDBRemoteCommunicationServer::SendUnimplementedResponse (const char *)
 {
     // TODO: Log the packet we aren't handling...
-    return SendPacket ("");
+    return SendPacketNoLock ("", 0);
 }
 
 size_t
@@ -187,14 +187,14 @@
     char packet[16];
     int packet_len = ::snprintf (packet, sizeof(packet), "E%2.2x", err);
     assert (packet_len < sizeof(packet));
-    return SendPacket (packet, packet_len);
+    return SendPacketNoLock (packet, packet_len);
 }
 
 
 size_t
 GDBRemoteCommunicationServer::SendOKResponse ()
 {
-    return SendPacket ("OK");
+    return SendPacketNoLock ("OK", 2);
 }
 
 bool
@@ -269,7 +269,7 @@
         response.PutChar(';');
     }
     
-    return SendPacket (response) > 0;
+    return SendPacketNoLock (response.GetData(), response.GetSize()) > 0;
 }
 
 static void
@@ -308,7 +308,7 @@
         {
             StreamString response;
             CreateProcessInfoResponse (proc_info, response);
-            return SendPacket (response);
+            return SendPacketNoLock (response.GetData(), response.GetSize());
         }
     }
     return SendErrorResponse (1);
@@ -423,7 +423,7 @@
         StreamString response;
         CreateProcessInfoResponse (m_proc_infos.GetProcessInfoAtIndex(m_proc_infos_index), response);
         ++m_proc_infos_index;
-        return SendPacket (response);
+        return SendPacketNoLock (response.GetData(), response.GetSize());
     }
     return SendErrorResponse (4);
 }
@@ -441,7 +441,7 @@
         {
             StreamString response;
             response.PutCStringAsRawHex8 (name.c_str());
-            return SendPacket (response);
+            return SendPacketNoLock (response.GetData(), response.GetSize());
         }
     }
     return SendErrorResponse (5);
@@ -461,7 +461,7 @@
         {
             StreamString response;
             response.PutCStringAsRawHex8 (name.c_str());
-            return SendPacket (response);
+            return SendPacketNoLock (response.GetData(), response.GetSize());
         }
     }
     return SendErrorResponse (6);
@@ -498,7 +498,7 @@
                     bytes_left = 0;
                 }
             }
-            return SendPacket (response);
+            return SendPacketNoLock (response.GetData(), response.GetSize());
         }
     }
     return SendErrorResponse (7);
@@ -657,7 +657,7 @@
             m_process_launch_info.Clear();
         }
     }
-    return SendPacket (response);
+    return SendPacketNoLock (response.GetData(), response.GetSize());
 }
 
 bool
@@ -710,7 +710,7 @@
                             const int response_len = ::snprintf (response, sizeof(response), "pid:%llu;port:%u;", debugserver_pid, port);
                             assert (response_len < sizeof(response));
                             //m_port_to_pid_map[port] = debugserver_launch_info.GetProcessID();
-                            success = SendPacket (response, response_len) > 0;
+                            success = SendPacketNoLock (response, response_len) > 0;
                         }
                     }
                     ::unlink (unix_socket_name);
@@ -736,7 +736,7 @@
     StreamString response;    
     response.PutChar('E');
     response.PutCString(m_process_launch_error.AsCString("<unknown error>"));
-    return SendPacket (response);
+    return SendPacketNoLock (response.GetData(), response.GetSize());
 }
 
 bool