[Lldb-commits] [lldb] Convert the StackFrameList mutex to a shared mutex. (PR #117252)

Pavel Labath via lldb-commits lldb-commits at lists.llvm.org
Mon Dec 9 05:21:05 PST 2024


================
@@ -594,7 +643,7 @@ StackFrameSP StackFrameList::GetFrameAtIndex(uint32_t idx) {
   // GetFramesUpTo will fill m_frames with as many frames as you asked for, if
   // there are that many.  If there weren't then you asked for too many frames.
   // GetFramesUpTo returns true if interrupted:
-  if (GetFramesUpTo(idx)) {
+  if (GetFramesUpTo(idx, AllowInterruption, guard)) {
     Log *log = GetLog(LLDBLog::Thread);
     LLDB_LOG(log, "GetFrameAtIndex was interrupted");
     return {};
----------------
labath wrote:

(This is a comment about lines from 652 to ~682, but github won't let me place a comment there)

Are you sure that code can be run with only a read/shared lock? It modifies (through the SetFrameAtIndex call) the stack frame list, which sounds like it could be bad..

https://github.com/llvm/llvm-project/pull/117252


More information about the lldb-commits mailing list