[Mono-dev] Mono native crash when we call a method Continue from CoreCLR debugger callback.

Mikhail Filippov mikhail at filippov.me
Sun May 21 13:41:16 UTC 2017


Hi, all. We have a native crash in mono:

(lldb) bt
* thread #15, name = 'tid_4303', stop reason = EXC_BAD_ACCESS (code=1, address=0x0)
  * frame #0: 0x0000000000000000
    frame #1: 0x000000010a319fe1
    frame #2: 0x0000000109300fd3
    frame #3: 0x000000010a314a96
    frame #4: 0x00000001093725a1 libmscordbi.dylib`ShimProxyCallback::QueueCreateProcess(this=0x00000001036ddcb0, args=(m_pCallback1 = 0x00000001036d8110, m_pCallback2 = 0x00000001036da7f0, m_pCallback3 = 0x00000001036da440))::CreateProcessEvent::Dispatch(ManagedEvent::DispatchArgs) at shimcallback.cpp:348
    frame #5: 0x0000000109411a88 libmscordbi.dylib`CordbProcess::DispatchRCEvent(this=0x0000000105180400) at process.cpp:4692
    frame #6: 0x000000010942ea03 libmscordbi.dylib`CordbRCEventThread::FlushQueuedEvents(this=0x00000001036d2580, process=0x0000000105180400) at process.cpp:10270
    frame #7: 0x000000010942f80d libmscordbi.dylib`CordbRCEventThread::ThreadProc(this=0x00000001036d2580) at process.cpp:10525
    frame #8: 0x000000010942fbac libmscordbi.dylib`CordbRCEventThread::ThreadProc(parameter=0x00000001036d2580) at process.cpp:10591
    frame #9: 0x0000000109dfe004 libmscordaccore.dylib`CorUnix::CPalThread::ThreadEntry(pvParam=0x0000000105182e00) at thread.cpp:1730
    frame #10: 0x00007fffcfd2b93b libsystem_pthread.dylib`_pthread_body + 180
    frame #11: 0x00007fffcfd2b887 libsystem_pthread.dylib`_pthread_start + 286
    frame #12: 0x00007fffcfd2b08d libsystem_pthread.dylib`thread_start + 13

(lldb) pmip 0x000000010a314a96
IP 0x10a314a96 at offset 0x206 of method (wrapper native-to-managed) JetBrains.Debugger.CorApi.ComInterop.ICorDebugManagedCallback:CreateProcess (intptr,intptr) (0x10a314890 0x10a314b82)[domain 0x10060e720 - JetBrains.Debugger.Mono.Tests.exe]

(lldb) pmip 0x0000000109300fd3
IP 0x109300fd3 at offset 0x63 of method JetBrains.Debugger.CorApi.ComInterop.Eventing.ManagedCallbackEventSink:JetBrains.Debugger.CorApi.ComInterop.ICorDebugManagedCallback.CreateProcess (JetBrains.Debugger.CorApi.ComInterop.ICorDebugProcess) (0x109300f70 0x109300fd8)[domain 0x10060e720 - JetBrains.Debugger.Mono.Tests.exe]

(lldb) pmip 0x000000010a319fe1
IP 0x10a319fe1 at offset 0x31 of method (wrapper cominterop-invoke) JetBrains.Debugger.CorApi.ComInterop.ICorDebugController:Continue (int) (0x10a319fb0 0x10a31a038)[domain 0x10060e720 - JetBrains.Debugger.Mono.Tests.exe]

We have a stable reproduce for its problem. We are using mono master branch. In another test case ICorDebugController:Continue worked correctly. We cannot find the reason for this behaviour.  
 Could somebody help us to debug the problem? 
-- 
Mikhail Filippov 
Software Developer
JetBrains
http://jetbrains.com
“The Drive To Develop"


More information about the Mono-devel-list mailing list