llvmbot wrote:
<!--LLVM PR SUMMARY COMMENT--> @llvm/pr-subscribers-lldb Author: Jonas Devlieghere (JDevlieghere) <details> <summary>Changes</summary> The debugserver code predates modern C++, but with C++11 and later there's no need to have something like PThreadMutex. This migrates RNBRemote away from PThreadMutex in preparation for removing it. --- Full diff: https://github.com/llvm/llvm-project/pull/137547.diff 2 Files Affected: - (modified) lldb/tools/debugserver/source/RNBRemote.cpp (+2-2) - (modified) lldb/tools/debugserver/source/RNBRemote.h (+1-3) ``````````diff diff --git a/lldb/tools/debugserver/source/RNBRemote.cpp b/lldb/tools/debugserver/source/RNBRemote.cpp index eb7c5ca32c02a..e0831023e7ae4 100644 --- a/lldb/tools/debugserver/source/RNBRemote.cpp +++ b/lldb/tools/debugserver/source/RNBRemote.cpp @@ -820,7 +820,7 @@ rnb_err_t RNBRemote::GetPacketPayload(std::string &return_packet) { // (uint32_t)m_comm.Timer().ElapsedMicroSeconds(true), __FUNCTION__); { - PThreadMutex::Locker locker(m_mutex); + std::lock_guard<std::mutex> guard(m_mutex); if (m_rx_packets.empty()) { // Only reset the remote command available event if we have no more // packets @@ -1052,7 +1052,7 @@ void RNBRemote::CommDataReceived(const std::string &new_data) { // (uint32_t)m_comm.Timer().ElapsedMicroSeconds(true), __FUNCTION__); // Put the packet data into the buffer in a thread safe fashion - PThreadMutex::Locker locker(m_mutex); + std::lock_guard<std::mutex> guard(m_mutex); std::string data; // See if we have any left over data from a previous call to this diff --git a/lldb/tools/debugserver/source/RNBRemote.h b/lldb/tools/debugserver/source/RNBRemote.h index c552713551013..ad254ae90e2f7 100644 --- a/lldb/tools/debugserver/source/RNBRemote.h +++ b/lldb/tools/debugserver/source/RNBRemote.h @@ -14,7 +14,6 @@ #define LLDB_TOOLS_DEBUGSERVER_SOURCE_RNBREMOTE_H #include "DNB.h" -#include "PThreadMutex.h" #include "RNBContext.h" #include "RNBDefs.h" #include "RNBSocket.h" @@ -25,7 +24,6 @@ class RNBSocket; class RNBContext; -class PThreadEvents; enum event_loop_mode { debug_nub, gdb_remote_protocol, done }; @@ -379,7 +377,7 @@ class RNBRemote { std::string m_arch; nub_thread_t m_continue_thread; // thread to continue; 0 for any, -1 for all nub_thread_t m_thread; // thread for other ops; 0 for any, -1 for all - PThreadMutex m_mutex; // Mutex that protects + std::mutex m_mutex; // Mutex that protects DispatchQueueOffsets m_dispatch_queue_offsets; nub_addr_t m_dispatch_queue_offsets_addr; uint32_t m_qSymbol_index; `````````` </details> https://github.com/llvm/llvm-project/pull/137547 _______________________________________________ lldb-commits mailing list lldb-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits