[Bug 23075] New: Zombie process a.out exists after running lldb-test on Darwin

Bug ID 23075
Summary Zombie process a.out exists after running lldb-test on Darwin
Product lldb
Version unspecified
Hardware PC
OS MacOS X
Status NEW
Severity normal
Priority P
Component All Bugs
Assignee chaorenl@google.com
Reporter chying@google.com
CC lldb-dev@cs.uiuc.edu
Classification Unclassified

Zombie process a.out left on system after running lldb-test on Darwin system.
While zombie process accumulates, python will quit unexpectedly during
lldb-tests. 
Please clean a.out after running test.

Here is the stack trace while python quit, 
Application Specific Information:
HandleCommand(command = "run")
test_with_dsym_and_run_command
(Test-rdar-9973865.Radar9973865DataFormatterTestCase) at
/Users/lldb_build/lldbSlave/buildDir/lldb.src/test/functionalities/data-formatter/rdar-9973865/Test-rdar-9973865.pyc

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0   libsystem_kernel.dylib            0x00007fff8b5cc866 __pthread_kill + 10
1   libsystem_pthread.dylib           0x00007fff8c30e35c pthread_kill + 92
2   _lldb.so                          0x0000000105650156 abort + 22
3   _lldb.so                          0x0000000105650131 __assert_rtn + 81
4   _lldb.so                          0x0000000105c909c5
lldb_private::Mutex::~Mutex() + 117 (Mutex.cpp:247)
5   _lldb.so                          0x0000000105c90ae5
lldb_private::Mutex::~Mutex() + 21 (Mutex.cpp:259)
6   _lldb.so                          0x000000010624fc6e
lldb_private::ConnectionFileDescriptor::~ConnectionFileDescriptor() + 318
(ConnectionFileDescriptorPosix.cpp:102)
7   _lldb.so                          0x000000010624fd65
lldb_private::ConnectionFileDescriptor::~ConnectionFileDescriptor() + 21
(ConnectionFileDescriptorPosix.cpp:102)
8   _lldb.so                          0x000000010624fd89
lldb_private::ConnectionFileDescriptor::~ConnectionFileDescriptor() + 25
(ConnectionFileDescriptorPosix.cpp:96)
9   _lldb.so                          0x00000001059f220c
std::__1::__shared_ptr_pointer<lldb_private::Connection*,
std::__1::default_delete<lldb_private::Connection>,
std::__1::allocator<lldb_private::Connection> >::__on_zero_shared() + 156
(memory:3670)
10  libc++.1.dylib                    0x00007fff90a2b4d6
std::__1::__shared_weak_count::__release_shared() + 44
11  _lldb.so                          0x00000001059f230f
std::__1::shared_ptr<lldb_private::Connection>::~shared_ptr() + 47
(memory:4449)
12  _lldb.so                          0x00000001059f18d5
std::__1::shared_ptr<lldb_private::Connection>::~shared_ptr() + 21
(memory:4449)
13  _lldb.so                          0x00000001059ee5db
lldb_private::Communication::~Communication() + 219 (Communication.cpp:74)
14  _lldb.so                          0x0000000105e1cb32
GDBRemoteCommunication::~GDBRemoteCommunication() + 338
(GDBRemoteCommunication.cpp:170)
15  _lldb.so                          0x00000001061d2bda
GDBRemoteCommunicationClient::~GDBRemoteCommunicationClient() + 554
(GDBRemoteCommunicationClient.cpp:130)
16  _lldb.so                          0x00000001061d2c05
GDBRemoteCommunicationClient::~GDBRemoteCommunicationClient() + 21
(GDBRemoteCommunicationClient.cpp:130)
17  _lldb.so                          0x0000000105e2caad
ProcessGDBRemote::~ProcessGDBRemote() + 397 (ProcessGDBRemote.cpp:317)
18  _lldb.so                          0x0000000105e2d065
ProcessGDBRemote::~ProcessGDBRemote() + 21 (ProcessGDBRemote.cpp:317)
19  _lldb.so                          0x0000000105e2d119
ProcessGDBRemote::~ProcessGDBRemote() + 25 (ProcessGDBRemote.cpp:303)
20  _lldb.so                          0x0000000105e4b2bc
std::__1::__shared_ptr_pointer<ProcessGDBRemote*,
std::__1::default_delete<ProcessGDBRemote>,
std::__1::allocator<ProcessGDBRemote> >::__on_zero_shared() + 156 (memory:3670)
21  libc++.1.dylib                    0x00007fff90a2b4d6
std::__1::__shared_weak_count::__release_shared() + 44
22  _lldb.so                          0x0000000103c3401f
std::__1::shared_ptr<lldb_private::Process>::~shared_ptr() + 47 (memory:4449)
23  _lldb.so                          0x0000000103c33f25
std::__1::shared_ptr<lldb_private::Process>::~shared_ptr() + 21 (memory:4449)
24  _lldb.so                          0x000000010606aa34
lldb_private::ExecutionContext::Clear() + 740 (memory:4577)
25  _lldb.so                          0x0000000105d29ce5
lldb_private::CommandObject::Cleanup() + 37 (CommandObject.cpp:347)
26  _lldb.so                          0x0000000105d2d6e4
lldb_private::CommandObjectParsed::Execute(char const*,
lldb_private::CommandReturnObject&) + 788 (CommandObject.cpp:1085)
27  _lldb.so                          0x0000000105cf0917
lldb_private::CommandInterpreter::HandleCommand(char const*,
lldb_private::LazyBool, lldb_private::CommandReturnObject&,
lldb_private::ExecutionContext*, bool, bool) + 24919
(CommandInterpreter.cpp:1966)
28  _lldb.so                          0x0000000103c8562d
lldb::SBCommandInterpreter::HandleCommand(char const*,
lldb::SBExecutionContext&, lldb::SBCommandReturnObject&, bool) + 589
(SBCommandInterpreter.cpp:255)
29  _lldb.so                          0x0000000103c853a1
lldb::SBCommandInterpreter::HandleCommand(char const*,
lldb::SBCommandReturnObject&, bool) + 81 (SBCommandInterpreter.cpp:228)
30  _lldb.so                          0x0000000103e0f77e
_wrap_SBCommandInterpreter_HandleCommand__SWIG_0(_object*, _object*) + 830
(LLDBWrapPython.cpp:18349)
31  _lldb.so                          0x0000000103d232d6
_wrap_SBCommandInterpreter_HandleCommand(_object*, _object*) + 966
(LLDBWrapPython.cpp:18590)