llvm-project/lldb/tools
Hafiz Abid Qadeer d1f606ff0f Fix a race condition in lldb-mi.
lldb-mi has 3 threads.
1. One that waits for user intput.
2. Another waits for 1st thread to get input command.
3. Waits for events from lldb.

2 & 3 needs to be synchronized so that they don't end up
doing things at same time. For example, while "break insert" is
processing, we can get a breakpoint event. Depending on where we
are in "break-insert", it can have different behavior. In some
cases, it can cause breakpoint to be deleted too. I have added a 
mutex so that command processing and event processing are done 
exclusively and they are not running at the same time.

In longer term, I think thread 2 & 3 should be merged to be only 
one thread which can wait on command or events.

Reviewed in http://reviews.llvm.org/D7371.

llvm-svn: 228128
2015-02-04 09:59:23 +00:00
..
compact-unwind Two fixes for compact unwind decoding for frameless large-stack-size 2015-01-23 01:02:32 +00:00
darwin-debug Fix darwin-debug build in cmake (OS X) 2015-01-26 17:23:18 +00:00
darwin-threads Fix examine-threads to build for arm64. 2014-11-14 22:58:25 +00:00
debugserver Add comments explaining the unwind setup in 2015-01-16 23:54:15 +00:00
driver Make the sourcing of the local .lldbinit file quiet. 2014-11-22 01:33:22 +00:00
install-headers Fixed our install-headers script to set version 2014-07-17 17:26:38 +00:00
lldb-gdbserver This patch gets remote-linux platform able to run processes 2015-01-21 22:42:49 +00:00
lldb-mi Fix a race condition in lldb-mi. 2015-02-04 09:59:23 +00:00
lldb-perf Cleanup how we listen for process events by using the broadcaster class name instead of having to catch each process instance as it comes alive. 2014-08-18 21:09:50 +00:00
lldb-platform Fix for lldb-platform linking error on OSX/CMake 2015-01-11 18:38:25 +00:00
CMakeLists.txt Fix darwin-debug build in cmake (OS X) 2015-01-26 17:23:18 +00:00
Makefile Avoid building lldb-mi when --enable-werror is set 2014-11-04 23:30:30 +00:00