Ticket #15515: lldb-tsan-touche-demo.txt

File lldb-tsan-touche-demo.txt, 23.2 KB (added by dwatteau, 4 months ago)

LLDB output when the ThreadSanitizer crash happens

Line 
1User picked target 'touche-demo' (engine ID 'touche', game ID 'touche')...
2Running Touché: The Adventures of the Fifth Musketeer (Demo/DOS/English)
3touche.dat: ddaed436445b2e77294ed19e8ae4aa2c, 8720683 bytes.
4==================
5WARNING: ThreadSanitizer: data race (pid=74374)
6 Read of size 8 at 0x000106e2e040 by thread T14 (mutexes: write M0, write M1):
7 #0 MidiDriver_ADLIB::onTimer() adlib.cpp:1634 (scummvm:arm64+0x100617e24)
8 #1 Common::Functor0Mem<void, MidiDriver_ADLIB>::operator()() const func.h:397 (scummvm:arm64+0x10061d9d0)
9 #2 Audio::EmulatedChip::readBuffer(short*, int) chip.cpp:127 (scummvm:arm64+0x1006268e4)
10 #3 Audio::RateConverter_Impl<false, true, false>::copyConvert(Audio::AudioStream&, short*, unsigned int, unsigned short, unsigned short) rate.cpp:109 (scummvm:arm64+0x10063d7f0)
11 #4 Audio::RateConverter_Impl<false, true, false>::convert(Audio::AudioStream&, short*, unsigned int, unsigned short, unsigned short) rate.cpp:290 (scummvm:arm64+0x10063d3d8)
12 #5 Audio::Channel::mix(short*, unsigned int) mixer.cpp:719 (scummvm:arm64+0x100633f20)
13 #6 Audio::MixerImpl::mixCallback(unsigned char*, unsigned int) mixer.cpp:331 (scummvm:arm64+0x100633b50)
14 #7 SdlMixerManager::callbackHandler(unsigned char*, int) sdl-mixer.cpp:203 (scummvm:arm64+0x100234b3c)
15 #8 SdlMixerManager::sdlCallback(void*, unsigned char*, int) sdl-mixer.cpp:210 (scummvm:arm64+0x100234a40)
16 #9 outputCallback <null>:71305024 (libSDL2-2.0.0.dylib:arm64+0xce0a0)
17
18 Previous write of size 8 at 0x000106e2e040 by main thread:
19 #0 MidiDriver_ADLIB::setTimerCallback(void*, void (*)(void*)) adlib.cpp:1669 (scummvm:arm64+0x1006191e0)
20 #1 Touche::MidiPlayer::MidiPlayer() midi.cpp:50 (scummvm:arm64+0x10005910c)
21 #2 Touche::MidiPlayer::MidiPlayer() midi.cpp:43 (scummvm:arm64+0x1000591dc)
22 #3 Touche::ToucheEngine::initMusic() touche.cpp:3433 (scummvm:arm64+0x10006ef74)
23 #4 Touche::ToucheEngine::run() touche.cpp:197 (scummvm:arm64+0x10006eca4)
24 #5 runGame(Plugin const*, OSystem&, DetectedGame const&, void const*) main.cpp:311 (scummvm:arm64+0x1000216e8)
25 #6 scummvm_main main.cpp:796 (scummvm:arm64+0x10001ec30)
26 #7 scummvm_main main.cpp:399 (scummvm:arm64+0x10001d30c)
27 #8 start <null>:65012592 (dyld:arm64e+0xfffffffffff4d150)
28
29 Location is heap block of size 7512 at 0x000106e2e000 allocated by main thread:
30 #0 operator new(unsigned long) <null>:74456384 (libclang_rt.tsan_osx_dynamic.dylib:arm64e+0x84210)
31 #1 AdLibEmuMusicPlugin::createInstance(MidiDriver**, unsigned int) const adlib.cpp:2319 (scummvm:arm64+0x10061c8bc)
32 #2 MidiDriver::createMidi(unsigned int) mididrv.cpp:408 (scummvm:arm64+0x10062ab2c)
33 #3 Touche::MidiPlayer::MidiPlayer() midi.cpp:47 (scummvm:arm64+0x100059078)
34 #4 Touche::MidiPlayer::MidiPlayer() midi.cpp:43 (scummvm:arm64+0x1000591dc)
35 #5 Touche::ToucheEngine::initMusic() touche.cpp:3433 (scummvm:arm64+0x10006ef74)
36 #6 Touche::ToucheEngine::run() touche.cpp:197 (scummvm:arm64+0x10006eca4)
37 #7 runGame(Plugin const*, OSystem&, DetectedGame const&, void const*) main.cpp:311 (scummvm:arm64+0x1000216e8)
38 #8 scummvm_main main.cpp:796 (scummvm:arm64+0x10001ec30)
39 #9 scummvm_main main.cpp:399 (scummvm:arm64+0x10001d30c)
40 #10 start <null>:65012592 (dyld:arm64e+0xfffffffffff4d150)
41
42 Mutex M0 (0x00010550d640) created at:
43 #0 pthread_mutex_init <null>:74456384 (libclang_rt.tsan_osx_dynamic.dylib:arm64e+0x3181c)
44 #1 SDL_CreateMutex_REAL <null>:71305024 (libSDL2-2.0.0.dylib:arm64+0xb98cc)
45 #2 OSystem_SDL::initBackend() sdl.cpp:331 (scummvm:arm64+0x1000077a0)
46 #3 OSystem_POSIX::initBackend() posix.cpp:92 (scummvm:arm64+0x1000126cc)
47 #4 OSystem_MacOSX::initBackend() macosx.cpp:121 (scummvm:arm64+0x100015834)
48 #5 virtual thunk to OSystem_MacOSX::initBackend() macosx.cpp (scummvm:arm64+0x10001588c)
49 #6 scummvm_main main.cpp:554 (scummvm:arm64+0x10001e498)
50 #7 scummvm_main main.cpp:399 (scummvm:arm64+0x10001d30c)
51 #8 start <null>:65012592 (dyld:arm64e+0xfffffffffff4d150)
52
53 Mutex M1 (0x000105529200) created at:
54 #0 pthread_mutex_init <null>:74456384 (libclang_rt.tsan_osx_dynamic.dylib:arm64e+0x3181c)
55 #1 SDL_CreateMutex_REAL <null>:71305024 (libSDL2-2.0.0.dylib:arm64+0xb98cc)
56 #2 SdlMutexInternal::SdlMutexInternal() sdl-mutex.cpp:34 (scummvm:arm64+0x1002353a8)
57 #3 createSdlMutexInternal() sdl-mutex.cpp:45 (scummvm:arm64+0x100235360)
58 #4 OSystem_SDL::createMutex() sdl.cpp:749 (scummvm:arm64+0x10000a708)
59 #5 virtual thunk to OSystem_SDL::createMutex() sdl.cpp (scummvm:arm64+0x10000a76c)
60 #6 Common::Mutex::Mutex() mutex.cpp:30 (scummvm:arm64+0x1006d1ba4)
61 #7 Common::Mutex::Mutex() mutex.cpp:28 (scummvm:arm64+0x1006d1c10)
62 #8 Audio::MixerImpl::MixerImpl(unsigned int, bool, unsigned int) mixer.cpp:200 (scummvm:arm64+0x100632b5c)
63 #9 Audio::MixerImpl::MixerImpl(unsigned int, bool, unsigned int) mixer.cpp:200 (scummvm:arm64+0x100632ddc)
64 #10 SdlMixerManager::init() sdl-mixer.cpp:122 (scummvm:arm64+0x100234430)
65 #11 OSystem_SDL::initBackend() sdl.cpp:331 (scummvm:arm64+0x1000077a0)
66 #12 OSystem_POSIX::initBackend() posix.cpp:92 (scummvm:arm64+0x1000126cc)
67 #13 OSystem_MacOSX::initBackend() macosx.cpp:121 (scummvm:arm64+0x100015834)
68 #14 virtual thunk to OSystem_MacOSX::initBackend() macosx.cpp (scummvm:arm64+0x10001588c)
69 #15 scummvm_main main.cpp:554 (scummvm:arm64+0x10001e498)
70 #16 scummvm_main main.cpp:399 (scummvm:arm64+0x10001d30c)
71 #17 start <null>:65012592 (dyld:arm64e+0xfffffffffff4d150)
72
73 Thread T14 (tid=3441230, running) created by main thread at:
74 #0 pthread_create <null>:74456384 (libclang_rt.tsan_osx_dynamic.dylib:arm64e+0x309d8)
75 #1 SDL_SYS_CreateThread <null>:71305024 (libSDL2-2.0.0.dylib:arm64+0xb9314)
76 #2 OSystem_SDL::initBackend() sdl.cpp:331 (scummvm:arm64+0x1000077a0)
77 #3 OSystem_POSIX::initBackend() posix.cpp:92 (scummvm:arm64+0x1000126cc)
78 #4 OSystem_MacOSX::initBackend() macosx.cpp:121 (scummvm:arm64+0x100015834)
79 #5 virtual thunk to OSystem_MacOSX::initBackend() macosx.cpp (scummvm:arm64+0x10001588c)
80 #6 scummvm_main main.cpp:554 (scummvm:arm64+0x10001e498)
81 #7 scummvm_main main.cpp:399 (scummvm:arm64+0x10001d30c)
82 #8 start <null>:65012592 (dyld:arm64e+0xfffffffffff4d150)
83
84SUMMARY: ThreadSanitizer: data race adlib.cpp:1634 in MidiDriver_ADLIB::onTimer()
85==================
86(lldb) ThreadSanitizer report breakpoint hit. Use 'thread info -s' to get extended information about the report.
87Process 74374 stopped
88* thread #10, name = 'AudioQueue thread', stop reason = Data race detected
89 frame #0: 0x0000000101d2e3a0 libclang_rt.tsan_osx_dynamic.dylib`__tsan_on_report
90libclang_rt.tsan_osx_dynamic.dylib`__tsan_on_report:
91-> 0x101d2e3a0 <+0>: ret
92
93libclang_rt.tsan_osx_dynamic.dylib`__tsan::SymbolizeStackId:
94 0x101d2e3a4 <+0>: cbz w0, 0x101d2e3d4 ; <+48>
95 0x101d2e3a8 <+4>: pacibsp
96 0x101d2e3ac <+8>: stp x29, x30, [sp, #-0x10]!
97Target 0: (scummvm) stopped.
98(lldb) bt
99* thread #10, name = 'AudioQueue thread', stop reason = Data race detected
100 * frame #0: 0x0000000101d2e3a0 libclang_rt.tsan_osx_dynamic.dylib`__tsan_on_report
101 frame #1: 0x0000000101d307b8 libclang_rt.tsan_osx_dynamic.dylib`__tsan::OutputReport(__tsan::ThreadState*, __tsan::ScopedReport const&) + 792
102 frame #2: 0x0000000101d31654 libclang_rt.tsan_osx_dynamic.dylib`__tsan::ReportRace(__tsan::ThreadState*, __tsan::RawShadow*, __tsan::Shadow, __tsan::Shadow, unsigned long) + 2892
103 frame #3: 0x0000000100617e28 scummvm`MidiDriver_ADLIB::onTimer(this=0x0000000106e2e000) at adlib.cpp:1634:6
104 frame #4: 0x000000010061d9d4 scummvm`Common::Functor0Mem<void, MidiDriver_ADLIB>::operator()(this=0x0000000105727520) const at func.h:397:10
105 frame #5: 0x00000001006268e8 scummvm`Audio::EmulatedChip::readBuffer(this=0x000000010682c380, buffer=0x0000000106c44210, numSamples=512) at chip.cpp:127:5
106 frame #6: 0x000000010063d7f4 scummvm`Audio::RateConverter_Impl<false, true, false>::copyConvert(this=0x0000000106c44200, input=0x000000010682c380, outBuffer=0x0000000106d27000, numSamples=1024, volL=256, volR=256) at rate.cpp:109:24
107 frame #7: 0x000000010063d3dc scummvm`Audio::RateConverter_Impl<false, true, false>::convert(this=0x0000000106c44200, input=0x000000010682c380, outBuffer=0x0000000106d27000, numSamples=1024, volL=256, volR=256) at rate.cpp:290:10
108 frame #8: 0x0000000100633f24 scummvm`Audio::Channel::mix(this=0x0000000106441920, data=0x0000000106d27000, len=1024) at mixer.cpp:719:21
109 frame #9: 0x0000000100633b54 scummvm`Audio::MixerImpl::mixCallback(this=0x0000000107018000, samples="", len=1024) at mixer.cpp:331:25
110 frame #10: 0x0000000100234b40 scummvm`SdlMixerManager::callbackHandler(this=0x0000000105529600, samples="", len=4096) at sdl-mixer.cpp:203:10
111 frame #11: 0x0000000100234a44 scummvm`SdlMixerManager::sdlCallback(this_=0x0000000105529600, samples="", len=4096) at sdl-mixer.cpp:210:11
112 frame #12: 0x00000001014520a4 libSDL2-2.0.0.dylib`outputCallback + 396
113 frame #13: 0x00000001932a5c7c AudioToolbox`AQ::API::Queue::CallOutputCallback(AudioQueueBuffer*) + 344
114 frame #14: 0x0000000193229850 AudioToolbox`AQClientCallbackMessageReader::DispatchCallbacks(void const*, unsigned long) + 288
115 frame #15: 0x00000001932a53a4 AudioToolbox`AQ::API::Queue::FetchAndDeliverPendingCallbacks() + 436
116 frame #16: 0x00000001932a51b0 AudioToolbox`(anonymous namespace)::RunLoopSourcePerform(void*) + 52
117 frame #17: 0x0000000182fb54b8 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 28
118 frame #18: 0x0000000182fb544c CoreFoundation`__CFRunLoopDoSource0 + 176
119 frame #19: 0x0000000182fb51bc CoreFoundation`__CFRunLoopDoSources0 + 244
120 frame #20: 0x0000000182fb3da8 CoreFoundation`__CFRunLoopRun + 828
121 frame #21: 0x0000000182fb3414 CoreFoundation`CFRunLoopRunSpecific + 608
122 frame #22: 0x0000000101451c40 libSDL2-2.0.0.dylib`audioqueue_thread + 1136
123 frame #23: 0x00000001013e9884 libSDL2-2.0.0.dylib`SDL_RunThread + 48
124 frame #24: 0x000000010143d360 libSDL2-2.0.0.dylib`RunThread + 12
125 frame #25: 0x0000000101cec95c libclang_rt.tsan_osx_dynamic.dylib`__tsan_thread_start_func + 144
126 frame #26: 0x0000000182ed5f94 libsystem_pthread.dylib`_pthread_start + 136
127
128(lldb) thread backtrace all
129 thread #1, queue = 'com.apple.main-thread'
130 frame #0: 0x0000000101ccbcf4 libclang_rt.tsan_osx_dynamic.dylib`__sanitizer::Semaphore::Wait() + 40
131 frame #1: 0x0000000101d1a62c libclang_rt.tsan_osx_dynamic.dylib`__tsan::SlotLock(__tsan::ThreadState*) + 148
132 frame #2: 0x0000000101d2e0e4 libclang_rt.tsan_osx_dynamic.dylib`__tsan::AfterSleep(__tsan::ThreadState*, unsigned long) + 68
133 frame #3: 0x0000000101cebaf4 libclang_rt.tsan_osx_dynamic.dylib`wrap_nanosleep + 276
134 frame #4: 0x000000010145a35c libSDL2-2.0.0.dylib`SDL_Delay_REAL + 80
135 frame #5: 0x000000010000a8a0 scummvm`OSystem_SDL::delayMillis(this=0x0000000106303d40, msecs=100) at sdl.cpp:766:3
136 frame #6: 0x000000010000a90c scummvm`virtual thunk to OSystem_SDL::delayMillis(unsigned int) at sdl.cpp:0
137 frame #7: 0x000000010062acc0 scummvm`MidiDriver::sendGMReset(this=0x0000000106e2e000) at mididrv.cpp:455:12
138 frame #8: 0x0000000100059160 scummvm`Touche::MidiPlayer::MidiPlayer(this=0x0000000106f1d5e0) at midi.cpp:55:13
139 frame #9: 0x00000001000591e0 scummvm`Touche::MidiPlayer::MidiPlayer(this=0x0000000106f1d5e0) at midi.cpp:43:26
140 frame #10: 0x000000010006ef78 scummvm`Touche::ToucheEngine::initMusic(this=0x000000011802a000) at touche.cpp:3433:21
141 frame #11: 0x000000010006eca8 scummvm`Touche::ToucheEngine::run(this=0x000000011802a000) at touche.cpp:197:2
142 frame #12: 0x00000001000216ec scummvm`runGame(enginePlugin=0x00000001057241e0, system=0x0000000106303d40, game=0x000000016fdfd588, meDescriptor=0x0000000105b0b200) at main.cpp:311:33
143 frame #13: 0x000000010001ec34 scummvm`scummvm_main(argc=1, argv=0x000000016fdff620) at main.cpp:796:13
144 frame #14: 0x0000000100015080 scummvm`main(argc=1, argv=0x000000016fdff620) at macosx-main.cpp:44:12
145 frame #15: 0x0000000182b4b154 dyld`start + 2476
146 thread #2
147 frame #0: 0x0000000182e96a84 libsystem_kernel.dylib`__workq_kernreturn + 8
148 thread #3
149 frame #0: 0x0000000182e96a84 libsystem_kernel.dylib`__workq_kernreturn + 8
150 thread #4
151 frame #0: 0x0000000182e983c8 libsystem_kernel.dylib`__semwait_signal + 8
152 frame #1: 0x0000000182d79568 libsystem_c.dylib`nanosleep + 220
153 frame #2: 0x0000000182d79480 libsystem_c.dylib`usleep + 68
154 frame #3: 0x0000000101d1d084 libclang_rt.tsan_osx_dynamic.dylib`__tsan::BackgroundThread(void*) + 200
155 frame #4: 0x0000000182ed5f94 libsystem_pthread.dylib`_pthread_start + 136
156 thread #6
157 frame #0: 0x0000000182e94dd4 libsystem_kernel.dylib`mach_msg2_trap + 8
158 frame #1: 0x0000000182ea75c4 libsystem_kernel.dylib`mach_msg2_internal + 80
159 frame #2: 0x0000000182e9d9a4 libsystem_kernel.dylib`mach_msg_overwrite + 476
160 frame #3: 0x0000000182e95158 libsystem_kernel.dylib`mach_msg + 24
161 frame #4: 0x000000019d0ff094 CoreMIDI`XServerMachPort::ReceiveMessage(int&, void*, int&) + 104
162 frame #5: 0x000000019d11057c CoreMIDI`MIDIProcess::MIDIInPortThread::Run() + 156
163 frame #6: 0x000000019d10d908 CoreMIDI`CADeprecated::XThread::RunHelper(void*) + 48
164 frame #7: 0x000000019d10f5cc CoreMIDI`CADeprecated::CAPThread::Entry(CADeprecated::CAPThread*) + 92
165 frame #8: 0x0000000101cec95c libclang_rt.tsan_osx_dynamic.dylib`__tsan_thread_start_func + 144
166 frame #9: 0x0000000182ed5f94 libsystem_pthread.dylib`_pthread_start + 136
167 thread #7
168 frame #0: 0x0000000182e96a84 libsystem_kernel.dylib`__workq_kernreturn + 8
169 thread #8, name = 'caulk.messenger.shared:17'
170 frame #0: 0x0000000182e94d50 libsystem_kernel.dylib`semaphore_wait_trap + 8
171 frame #1: 0x000000018d455624 caulk`caulk::semaphore::timed_wait(double) + 212
172 frame #2: 0x000000018d4554d8 caulk`caulk::concurrent::details::worker_thread::run() + 36
173 frame #3: 0x000000018d4551d8 caulk`void* caulk::thread_proxy<std::__1::tuple<caulk::thread::attributes, void (caulk::concurrent::details::worker_thread::*)(), std::__1::tuple<caulk::concurrent::details::worker_thread*>>>(void*) + 96
174 frame #4: 0x0000000101cec95c libclang_rt.tsan_osx_dynamic.dylib`__tsan_thread_start_func + 144
175 frame #5: 0x0000000182ed5f94 libsystem_pthread.dylib`_pthread_start + 136
176 thread #9, name = 'caulk.messenger.shared:high'
177 frame #0: 0x0000000182e94d50 libsystem_kernel.dylib`semaphore_wait_trap + 8
178 frame #1: 0x000000018d455624 caulk`caulk::semaphore::timed_wait(double) + 212
179 frame #2: 0x000000018d4554d8 caulk`caulk::concurrent::details::worker_thread::run() + 36
180 frame #3: 0x000000018d4551d8 caulk`void* caulk::thread_proxy<std::__1::tuple<caulk::thread::attributes, void (caulk::concurrent::details::worker_thread::*)(), std::__1::tuple<caulk::concurrent::details::worker_thread*>>>(void*) + 96
181 frame #4: 0x0000000101cec95c libclang_rt.tsan_osx_dynamic.dylib`__tsan_thread_start_func + 144
182 frame #5: 0x0000000182ed5f94 libsystem_pthread.dylib`_pthread_start + 136
183* thread #10, name = 'AudioQueue thread', stop reason = Data race detected
184 * frame #0: 0x0000000101d2e3a0 libclang_rt.tsan_osx_dynamic.dylib`__tsan_on_report
185 frame #1: 0x0000000101d307b8 libclang_rt.tsan_osx_dynamic.dylib`__tsan::OutputReport(__tsan::ThreadState*, __tsan::ScopedReport const&) + 792
186 frame #2: 0x0000000101d31654 libclang_rt.tsan_osx_dynamic.dylib`__tsan::ReportRace(__tsan::ThreadState*, __tsan::RawShadow*, __tsan::Shadow, __tsan::Shadow, unsigned long) + 2892
187 frame #3: 0x0000000100617e28 scummvm`MidiDriver_ADLIB::onTimer(this=0x0000000106e2e000) at adlib.cpp:1634:6
188 frame #4: 0x000000010061d9d4 scummvm`Common::Functor0Mem<void, MidiDriver_ADLIB>::operator()(this=0x0000000105727520) const at func.h:397:10
189 frame #5: 0x00000001006268e8 scummvm`Audio::EmulatedChip::readBuffer(this=0x000000010682c380, buffer=0x0000000106c44210, numSamples=512) at chip.cpp:127:5
190 frame #6: 0x000000010063d7f4 scummvm`Audio::RateConverter_Impl<false, true, false>::copyConvert(this=0x0000000106c44200, input=0x000000010682c380, outBuffer=0x0000000106d27000, numSamples=1024, volL=256, volR=256) at rate.cpp:109:24
191 frame #7: 0x000000010063d3dc scummvm`Audio::RateConverter_Impl<false, true, false>::convert(this=0x0000000106c44200, input=0x000000010682c380, outBuffer=0x0000000106d27000, numSamples=1024, volL=256, volR=256) at rate.cpp:290:10
192 frame #8: 0x0000000100633f24 scummvm`Audio::Channel::mix(this=0x0000000106441920, data=0x0000000106d27000, len=1024) at mixer.cpp:719:21
193 frame #9: 0x0000000100633b54 scummvm`Audio::MixerImpl::mixCallback(this=0x0000000107018000, samples="", len=1024) at mixer.cpp:331:25
194 frame #10: 0x0000000100234b40 scummvm`SdlMixerManager::callbackHandler(this=0x0000000105529600, samples="", len=4096) at sdl-mixer.cpp:203:10
195 frame #11: 0x0000000100234a44 scummvm`SdlMixerManager::sdlCallback(this_=0x0000000105529600, samples="", len=4096) at sdl-mixer.cpp:210:11
196 frame #12: 0x00000001014520a4 libSDL2-2.0.0.dylib`outputCallback + 396
197 frame #13: 0x00000001932a5c7c AudioToolbox`AQ::API::Queue::CallOutputCallback(AudioQueueBuffer*) + 344
198 frame #14: 0x0000000193229850 AudioToolbox`AQClientCallbackMessageReader::DispatchCallbacks(void const*, unsigned long) + 288
199 frame #15: 0x00000001932a53a4 AudioToolbox`AQ::API::Queue::FetchAndDeliverPendingCallbacks() + 436
200 frame #16: 0x00000001932a51b0 AudioToolbox`(anonymous namespace)::RunLoopSourcePerform(void*) + 52
201 frame #17: 0x0000000182fb54b8 CoreFoundation`__CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 28
202 frame #18: 0x0000000182fb544c CoreFoundation`__CFRunLoopDoSource0 + 176
203 frame #19: 0x0000000182fb51bc CoreFoundation`__CFRunLoopDoSources0 + 244
204 frame #20: 0x0000000182fb3da8 CoreFoundation`__CFRunLoopRun + 828
205 frame #21: 0x0000000182fb3414 CoreFoundation`CFRunLoopRunSpecific + 608
206 frame #22: 0x0000000101451c40 libSDL2-2.0.0.dylib`audioqueue_thread + 1136
207 frame #23: 0x00000001013e9884 libSDL2-2.0.0.dylib`SDL_RunThread + 48
208 frame #24: 0x000000010143d360 libSDL2-2.0.0.dylib`RunThread + 12
209 frame #25: 0x0000000101cec95c libclang_rt.tsan_osx_dynamic.dylib`__tsan_thread_start_func + 144
210 frame #26: 0x0000000182ed5f94 libsystem_pthread.dylib`_pthread_start + 136
211 thread #11, name = 'caulk::deferred_logger'
212 frame #0: 0x0000000182e94d50 libsystem_kernel.dylib`semaphore_wait_trap + 8
213 frame #1: 0x000000018d455624 caulk`caulk::semaphore::timed_wait(double) + 212
214 frame #2: 0x000000018d4554d8 caulk`caulk::concurrent::details::worker_thread::run() + 36
215 frame #3: 0x000000018d4551d8 caulk`void* caulk::thread_proxy<std::__1::tuple<caulk::thread::attributes, void (caulk::concurrent::details::worker_thread::*)(), std::__1::tuple<caulk::concurrent::details::worker_thread*>>>(void*) + 96
216 frame #4: 0x0000000101cec95c libclang_rt.tsan_osx_dynamic.dylib`__tsan_thread_start_func + 144
217 frame #5: 0x0000000182ed5f94 libsystem_pthread.dylib`_pthread_start + 136
218 thread #12, name = 'AQConverterThread'
219 frame #0: 0x0000000182e985cc libsystem_kernel.dylib`__psynch_cvwait + 8
220 frame #1: 0x0000000182ed655c libsystem_pthread.dylib`_pthread_cond_wait + 1228
221 frame #2: 0x0000000101d3b714 libclang_rt.tsan_osx_dynamic.dylib`__tsan::call_pthread_cancel_with_cleanup(int (*)(void*), void (*)(void*), void*) + 72
222 frame #3: 0x0000000101ced04c libclang_rt.tsan_osx_dynamic.dylib`wrap_pthread_cond_wait + 440
223 frame #4: 0x0000000191f46ce4 libAudioToolboxUtility.dylib`CADeprecated::CAGuard::Wait() + 76
224 frame #5: 0x000000019321ec04 AudioToolbox`AQConverterManager::AQConverterThread::ConverterThreadEntry(void*) + 572
225 frame #6: 0x0000000191f23254 libAudioToolboxUtility.dylib`CADeprecated::CAPThread::Entry(CADeprecated::CAPThread*) + 92
226 frame #7: 0x0000000101cec95c libclang_rt.tsan_osx_dynamic.dylib`__tsan_thread_start_func + 144
227 frame #8: 0x0000000182ed5f94 libsystem_pthread.dylib`_pthread_start + 136
228 thread #13, name = 'com.apple.audio.IOThread.client'
229 frame #0: 0x0000000182e94dd4 libsystem_kernel.dylib`mach_msg2_trap + 8
230 frame #1: 0x0000000182ea75c4 libsystem_kernel.dylib`mach_msg2_internal + 80
231 frame #2: 0x0000000182e9d9a4 libsystem_kernel.dylib`mach_msg_overwrite + 476
232 frame #3: 0x0000000182e95158 libsystem_kernel.dylib`mach_msg + 24
233 frame #4: 0x0000000185872c84 CoreAudio`HALB_MachPort::SendSimpleMessageWithSimpleReply(unsigned int, unsigned int, int, int&, bool, unsigned int) + 96
234 frame #5: 0x0000000185747274 CoreAudio`HALC_ProxyIOContext::IOWorkLoop() + 4272
235 frame #6: 0x0000000185745a8c CoreAudio`invocation function for block in HALC_ProxyIOContext::HALC_ProxyIOContext(unsigned int, unsigned int) + 108
236 frame #7: 0x00000001858cb850 CoreAudio`HALC_IOThread::Entry(void*) + 88
237 frame #8: 0x0000000101cec95c libclang_rt.tsan_osx_dynamic.dylib`__tsan_thread_start_func + 144
238 frame #9: 0x0000000182ed5f94 libsystem_pthread.dylib`_pthread_start + 136
239 thread #14, name = 'SDLTimer'
240 frame #0: 0x0000000182e985cc libsystem_kernel.dylib`__psynch_cvwait + 8
241 frame #1: 0x0000000182ed655c libsystem_pthread.dylib`_pthread_cond_wait + 1228
242 frame #2: 0x0000000101d3b714 libclang_rt.tsan_osx_dynamic.dylib`__tsan::call_pthread_cancel_with_cleanup(int (*)(void*), void (*)(void*), void*) + 72
243 frame #3: 0x0000000101ced264 libclang_rt.tsan_osx_dynamic.dylib`wrap_pthread_cond_timedwait + 452
244 frame #4: 0x000000010143db90 libSDL2-2.0.0.dylib`SDL_CondWaitTimeout_REAL + 148
245 frame #5: 0x000000010143d73c libSDL2-2.0.0.dylib`SDL_SemWaitTimeout_REAL + 80
246 frame #6: 0x00000001013e9d74 libSDL2-2.0.0.dylib`SDL_TimerThread + 436
247 frame #7: 0x00000001013e9884 libSDL2-2.0.0.dylib`SDL_RunThread + 48
248 frame #8: 0x000000010143d360 libSDL2-2.0.0.dylib`RunThread + 12
249 frame #9: 0x0000000101cec95c libclang_rt.tsan_osx_dynamic.dylib`__tsan_thread_start_func + 144
250 frame #10: 0x0000000182ed5f94 libsystem_pthread.dylib`_pthread_start + 136
251 thread #16
252 frame #0: 0x0000000182ed0d20 libsystem_pthread.dylib`start_wqthread
253 thread #17, name = 'com.apple.NSEventThread'
254 frame #0: 0x0000000182e94dd4 libsystem_kernel.dylib`mach_msg2_trap + 8
255 frame #1: 0x0000000182ea75c4 libsystem_kernel.dylib`mach_msg2_internal + 80
256 frame #2: 0x0000000182e9d9a4 libsystem_kernel.dylib`mach_msg_overwrite + 476
257 frame #3: 0x0000000182e95158 libsystem_kernel.dylib`mach_msg + 24
258 frame #4: 0x0000000182fb5660 CoreFoundation`__CFRunLoopServiceMachPort + 160
259 frame #5: 0x0000000182fb3f24 CoreFoundation`__CFRunLoopRun + 1208
260 frame #6: 0x0000000182fb3414 CoreFoundation`CFRunLoopRunSpecific + 608
261 frame #7: 0x000000018693d280 AppKit`_NSEventThread + 144
262 frame #8: 0x0000000101cec95c libclang_rt.tsan_osx_dynamic.dylib`__tsan_thread_start_func + 144
263 frame #9: 0x0000000182ed5f94 libsystem_pthread.dylib`_pthread_start + 136
264 thread #18
265 frame #0: 0x0000000000000000
266 thread #19, name = 'CVDisplayLink'
267 frame #0: 0x0000000182e985cc libsystem_kernel.dylib`__psynch_cvwait + 8
268 frame #1: 0x0000000182ed6588 libsystem_pthread.dylib`_pthread_cond_wait + 1272
269 frame #2: 0x0000000101d3b714 libclang_rt.tsan_osx_dynamic.dylib`__tsan::call_pthread_cancel_with_cleanup(int (*)(void*), void (*)(void*), void*) + 72
270 frame #3: 0x0000000101ced47c libclang_rt.tsan_osx_dynamic.dylib`wrap_pthread_cond_timedwait_relative_np + 452
271 frame #4: 0x000000018b9baee4 CoreVideo`CVDisplayLink::waitUntil(unsigned long long) + 328
272 frame #5: 0x000000018b9b9fb0 CoreVideo`CVDisplayLink::runIOThread() + 504
273 frame #6: 0x0000000101cec95c libclang_rt.tsan_osx_dynamic.dylib`__tsan_thread_start_func + 144
274 frame #7: 0x0000000182ed5f94 libsystem_pthread.dylib`_pthread_start + 136