[Lldb-commits] [PATCH] D63730: Remove core loading timeout

Pavel Labath via Phabricator via lldb-commits lldb-commits at lists.llvm.org
Mon Jun 24 10:56:30 PDT 2019


labath created this revision.
labath added reviewers: jingham, clayborg.
Herald added a subscriber: aprantl.

If target.preload-symbols is false, waiting for the process to "stop"
can take an arbitrarily long amount of time, because it will cause all
the debug info to be parsed (to compute the stop message showing the
function, its arguments, etc).

We were previously waiting for 10 seconds for the stop even to arrive,
which is a pretty long time, but it's not that hard to overcome with
huge debug info.

Since any arbitrary limit can be theoretically overcome with huge
debug_info and/or slow machine, and the stop even was sent 3 lines above
the wait, if we ever do not receive the stop even means we've got a bug
in lldb. Therefore, I remove the timeout on this wait completely.

No test because I don't know how to reproduce this without a
multi-gigabyte symbol file.


https://reviews.llvm.org/D63730

Files:
  source/Target/Process.cpp


Index: source/Target/Process.cpp
===================================================================
--- source/Target/Process.cpp
+++ source/Target/Process.cpp
@@ -2687,7 +2687,7 @@
     // Wait for a stopped event since we just posted one above...
     lldb::EventSP event_sp;
     StateType state =
-        WaitForProcessToStop(seconds(10), &event_sp, true, listener_sp);
+        WaitForProcessToStop(llvm::None, &event_sp, true, listener_sp);
 
     if (!StateIsStoppedState(state, false)) {
       Log *log(lldb_private::GetLogIfAllCategoriesSet(LIBLLDB_LOG_PROCESS));


-------------- next part --------------
A non-text attachment was scrubbed...
Name: D63730.206264.patch
Type: text/x-patch
Size: 576 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20190624/182f9de8/attachment.bin>


More information about the lldb-commits mailing list