summaryrefslogtreecommitdiffstats
path: root/lldb/source/Plugins/Process
diff options
context:
space:
mode:
authorChaoren Lin <chaorenl@google.com>2015-02-03 01:50:44 +0000
committerChaoren Lin <chaorenl@google.com>2015-02-03 01:50:44 +0000
commit938fcf63ed11e77a0f1cb030637d6163314cc276 (patch)
treeee9565b83ecd6997196ccd1470165ff0e729611c /lldb/source/Plugins/Process
parentfa03ad2ebc7306bf2a952f9d5c5ca3d39cfff63c (diff)
downloadbcm5719-llvm-938fcf63ed11e77a0f1cb030637d6163314cc276.tar.gz
bcm5719-llvm-938fcf63ed11e77a0f1cb030637d6163314cc276.zip
llgs: fixed a bug in deferred signal thread id; added coordinator enqueue logging.
The deferred signal thread id was being set with the process id unintentionally in NativeProcessLinux::CallAfterRunningThreadsStop(). llvm-svn: 227910
Diffstat (limited to 'lldb/source/Plugins/Process')
-rw-r--r--lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp2
-rw-r--r--lldb/source/Plugins/Process/Linux/ThreadStateCoordinator.cpp4
2 files changed, 5 insertions, 1 deletions
diff --git a/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp b/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
index 7ec7a180c9c..d88196f94ce 100644
--- a/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
+++ b/lldb/source/Plugins/Process/Linux/NativeProcessLinux.cpp
@@ -3894,7 +3894,7 @@ NativeProcessLinux::CallAfterRunningThreadsStop (lldb::tid_t tid,
const std::function<void (lldb::tid_t tid)> &call_after_function)
{
const lldb::pid_t pid = GetID ();
- m_coordinator_up->CallAfterRunningThreadsStop (pid,
+ m_coordinator_up->CallAfterRunningThreadsStop (tid,
[=](lldb::tid_t request_stop_tid)
{
tgkill (pid, request_stop_tid, SIGSTOP);
diff --git a/lldb/source/Plugins/Process/Linux/ThreadStateCoordinator.cpp b/lldb/source/Plugins/Process/Linux/ThreadStateCoordinator.cpp
index 128173d4f45..e4d412e2386 100644
--- a/lldb/source/Plugins/Process/Linux/ThreadStateCoordinator.cpp
+++ b/lldb/source/Plugins/Process/Linux/ThreadStateCoordinator.cpp
@@ -528,7 +528,11 @@ void
ThreadStateCoordinator::EnqueueEvent (EventBaseSP event_sp)
{
std::lock_guard<std::mutex> lock (m_queue_mutex);
+
m_event_queue.push (event_sp);
+ if (m_log_event_processing)
+ Log ("ThreadStateCoordinator::%s enqueued event: %s", __FUNCTION__, event_sp->GetDescription ().c_str ());
+
m_queue_condition.notify_one ();
}
OpenPOWER on IntegriCloud