Project

General

Profile

Bug #11040 » mutex_bug_trace.txt

jvdp (Jaap van der Plas), 04/07/2015 11:38 AM

 
$ ./ruby --disable=gems mutex_bug.rb
#<Thread:0x007fea210c0298> c-return mutex_bug.rb:35 set_trace_func Kernel 0
#<Thread:0x007fea210c0298> line mutex_bug.rb:53 0
#<Thread:0x007fea210c0298> c-call mutex_bug.rb:41 times Integer 0
#<Thread:0x007fea210c0298> c-return mutex_bug.rb:41 times Integer 0
#<Thread:0x007fea210c0298> c-call mutex_bug.rb:41 map Enumerable 0
#<Thread:0x007fea210c0298> c-call mutex_bug.rb:41 each Enumerator 0
#<Thread:0x007fea210c0298> c-call mutex_bug.rb:41 times Integer 0
#<Thread:0x007fea210c0298> line mutex_bug.rb:42 0
#<Thread:0x007fea210c0298> c-call mutex_bug.rb:42 new Thread 0
#<Thread:0x007fea210c0298> c-call mutex_bug.rb:42 initialize Thread 0
#<Thread:0x007fea210c0298> c-return mutex_bug.rb:42 initialize Thread 0
#<Thread:0x007fea210c0298> c-return mutex_bug.rb:42 new Thread 0
#<Thread:0x007fea210c0298> line mutex_bug.rb:42 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:43 0
#<Thread:0x007fea210c0298> c-call mutex_bug.rb:42 new Thread 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:43 times Integer 0
#<Thread:0x007fea210c0298> c-call mutex_bug.rb:42 initialize Thread 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:44 0
#<Thread:0x007fea210c0298> c-return mutex_bug.rb:42 initialize Thread 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:43 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:44 new Thread 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:43 times Integer 0
#<Thread:0x007fea210c0298> c-return mutex_bug.rb:42 new Thread 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:44 initialize Thread 0
#<Thread:0x007fea210c0298> c-return mutex_bug.rb:41 times Integer 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:44 initialize Thread 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:44 0
#<Thread:0x007fea210a3f58> line mutex_bug.rb:45 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:44 new Thread 0
#<Thread:0x007fea210c0298> c-return mutex_bug.rb:41 each Enumerator 0
#<Thread:0x007fea210a3f58> call mutex_bug.rb:26 stuff MyMonitor 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:44 new Thread 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:48 0
#<Thread:0x007fea210c0298> c-return mutex_bug.rb:41 map Enumerable 0
#<Thread:0x007fea210a3f58> line mutex_bug.rb:27 stuff MyMonitor 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:44 initialize Thread 0
#<Thread:0x007fea210c0298> c-call mutex_bug.rb:53 to_proc Symbol 0
#<Thread:0x007fea210aa010> call mutex_bug.rb:26 stuff MyMonitor 0
#<Thread:0x007fea210a3f58> call mutex_bug.rb:10 mon_enter MyMonitor 0
#<Thread:0x007fea210a2428> line mutex_bug.rb:45 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:27 stuff MyMonitor 0
#<Thread:0x007fea210c0298> c-return mutex_bug.rb:53 to_proc Symbol 0
#<Thread:0x007fea210a2428> call mutex_bug.rb:26 stuff MyMonitor 0
#<Thread:0x007fea210a3f58> line mutex_bug.rb:11 mon_enter MyMonitor 0
#<Thread:0x007fea210c0298> c-call mutex_bug.rb:53 each Array 0
#<Thread:0x007fea210a2428> line mutex_bug.rb:27 stuff MyMonitor 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:44 initialize Thread 0
#<Thread:0x007fea210c0298> c-call mutex_bug.rb:53 join Thread 0
#<Thread:0x007fea210a3f58> c-call mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea210aa010> call mutex_bug.rb:10 mon_enter MyMonitor 0
#<Thread:0x007fea210a2428> call mutex_bug.rb:10 mon_enter MyMonitor 0
#<Thread:0x007fea210a3f58> c-return mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:44 new Thread 0
#<Thread:0x007fea210a2428> line mutex_bug.rb:11 mon_enter MyMonitor 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:11 mon_enter MyMonitor 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:48 0
#<Thread:0x007fea210a2428> c-call mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea210a3f58> line mutex_bug.rb:12 mon_enter MyMonitor 0
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:26 stuff MyMonitor 0
#<Thread:0x007fea210a2428> c-return mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea210a3f58> c-call mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210a2428> line mutex_bug.rb:12 mon_enter MyMonitor 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea210a3f58> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:27 stuff MyMonitor 0
#<Thread:0x007fea210a2428> c-call mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210a3f58> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:10 mon_enter MyMonitor 0
#<Thread:0x007fea210a3f58> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:12 mon_enter MyMonitor 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:11 mon_enter MyMonitor 0
#<Thread:0x007fea210a3f58> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea210a3f58> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea210a3f58> 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:11 current Thread #<Thread:0x007fea210a3f58> 0
#<Thread:0x007fea210a3f58> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea210a3f58> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:12 mon_enter MyMonitor #<Thread:0x007fea210a3f58> 1
#<Thread:0x007fea210a3f58> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea210a3f58> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:12 lock Mutex #<Thread:0x007fea210a3f58> 1
#<Thread:0x007fea210a3f58> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea210a3f58> 1
#<Thread:0x007fea210a3f58> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea210a3f58> 1
#<Thread:0x007fea210a3f58> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210a3f58> 1
#<Thread:0x007fea210a3f58> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210a3f58> 1
#<Thread:0x007fea210a3f58> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea210a3f58> 1
#<Thread:0x007fea210a3f58> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea210a3f58> 1
#<Thread:0x007fea210a3f58> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea210a3f58> 1
#<Thread:0x007fea210a3f58> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea210a3f58> 1
#<Thread:0x007fea210a3f58> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea210a3f58> 1
#<Thread:0x007fea210a3f58> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea210a3f58> 0
#<Thread:0x007fea210a3f58> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea210a3f58> 0
#<Thread:0x007fea210a3f58> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea210a3f58> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210a3f58> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210a2428> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210a3f58> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea210a2428> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea210a3f58> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea210a2428> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a3f58> line mutex_bug.rb:46 0
#<Thread:0x007fea210a2428> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a3f58> c-call mutex_bug.rb:46 sleep Kernel 0
#<Thread:0x007fea210a2428> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea210a2428> 0
#<Thread:0x007fea210a2428> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea210a2428> 1
#<Thread:0x007fea210a2428> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea210a2428> 1
#<Thread:0x007fea210a2428> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea210a2428> 1
#<Thread:0x007fea210a2428> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea210a2428> 1
#<Thread:0x007fea210a2428> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210a2428> 1
#<Thread:0x007fea210a2428> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210a2428> 1
#<Thread:0x007fea210a2428> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea210a2428> 1
#<Thread:0x007fea210a2428> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea210a2428> 1
#<Thread:0x007fea210a2428> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea210a2428> 1
#<Thread:0x007fea210a2428> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea210a2428> 1
#<Thread:0x007fea210a2428> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea210a2428> 1
#<Thread:0x007fea210a2428> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea210a2428> 0
#<Thread:0x007fea210a2428> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea210a2428> 0
#<Thread:0x007fea210a2428> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea210a2428> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210a2428> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210a2428> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea210a2428> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea210a2428> line mutex_bug.rb:46 0
#<Thread:0x007fea210a2428> c-call mutex_bug.rb:46 sleep Kernel 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210aa010> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea210aa010> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:49 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:49 kill Thread 0
#<Thread:0x007fea210a8fd0> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:49 kill Thread #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:50 #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a3f58> c-return mutex_bug.rb:46 sleep Kernel #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:50 join Thread #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:50 join Thread #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:44 #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:44 new Thread #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:44 initialize Thread #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea2107b558> line mutex_bug.rb:45 #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea2107b558> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea2107b558> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:44 initialize Thread #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea2107b558> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:44 new Thread #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:48 #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea2107b558> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210aa010> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 0 #<Thread:0x007fea210a8fd0> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea2107b558> c-call mutex_bug.rb:11 current Thread #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea2107b558> c-return mutex_bug.rb:11 current Thread 0

#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea2107b558> line mutex_bug.rb:12 mon_enter MyMonitor 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea2107b558> c-call mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210a8fd0> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea2107b558> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210a8fd0> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:12 mon_enter MyMonitor 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:49 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea2107b558> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:49 kill Thread 0
#<Thread:0x007fea2107b558> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:49 kill Thread 0
#<Thread:0x007fea210a2428> c-return mutex_bug.rb:46 sleep Kernel 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:50 0
#<Thread:0x007fea2107b558> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:50 join Thread 0
#<Thread:0x007fea2107b558> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea2107b558> 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:50 join Thread #<Thread:0x007fea2107b558> 0
#<Thread:0x007fea2107b558> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:44 #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea2107b558> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:44 new Thread #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea2107b558> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:44 initialize Thread #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea2107b558> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:44 initialize Thread #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea2107b558> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea210701f8> line mutex_bug.rb:45 #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:44 new Thread #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea2107b558> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea210701f8> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea2107b558> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:48 #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea2107b558> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea210701f8> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea2107b558> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea210701f8> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea2107b558> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea210701f8> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea2107b558> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea210701f8> c-call mutex_bug.rb:11 current Thread #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea2107b558> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea2107b558> 0
#<Thread:0x007fea210701f8> c-return mutex_bug.rb:11 current Thread #<Thread:0x007fea2107b558> 0
#<Thread:0x007fea2107b558> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea2107b558> 0
#<Thread:0x007fea210701f8> line mutex_bug.rb:12 mon_enter MyMonitor #<Thread:0x007fea2107b558> 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea2107b558> 1
#<Thread:0x007fea2107b558> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea210701f8> c-call mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea2107b558> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea2107b558> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:12 mon_enter MyMonitor 0
#<Thread:0x007fea2107b558> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea2107b558> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea2107b558> line mutex_bug.rb:46 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea2107b558> c-call mutex_bug.rb:46 sleep Kernel 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210701f8> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210aa010> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea210701f8> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea210aa010> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea210701f8> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:49 0
#<Thread:0x007fea210701f8> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:49 kill Thread 0
#<Thread:0x007fea210701f8> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea210701f8> 0
#<Thread:0x007fea2107b558> c-return mutex_bug.rb:46 sleep Kernel #<Thread:0x007fea210701f8> 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:49 kill Thread #<Thread:0x007fea210701f8> 0
#<Thread:0x007fea210701f8> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:50 #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea210701f8> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:50 join Thread #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea210701f8> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:50 join Thread #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea210701f8> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:44 #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea210701f8> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:44 new Thread #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea210701f8> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea210701f8> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:44 initialize Thread #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea210701f8> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea210701f8> 1 #<Thread:0x007fea210aa010> c-return mutex_bug.rb:44 initialize Thread #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea21058558> line mutex_bug.rb:45 #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:44 new Thread #<Thread:0x007fea210701f8> 1

#<Thread:0x007fea210701f8> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea210701f8> 1 #<Thread:0x007fea21058558> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea210701f8> 1

#<Thread:0x007fea210aa010> line mutex_bug.rb:48 #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea210701f8> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea21058558> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea210aa010> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea21058558> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea210701f8> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea21058558> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea210701f8> 1
#<Thread:0x007fea210701f8> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea210701f8> 0
#<Thread:0x007fea21058558> c-call mutex_bug.rb:11 current Thread #<Thread:0x007fea210701f8> 0
#<Thread:0x007fea210aa010> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea210701f8> 0
#<Thread:0x007fea21058558> c-return mutex_bug.rb:11 current Thread #<Thread:0x007fea210701f8> 0
#<Thread:0x007fea210701f8> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea210701f8> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea210701f8> 0
#<Thread:0x007fea210701f8> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea21058558> line mutex_bug.rb:12 mon_enter MyMonitor #<Thread:0x007fea210701f8> 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea21058558> c-call mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210701f8> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:12 mon_enter MyMonitor 0
#<Thread:0x007fea210701f8> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210701f8> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea210701f8> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210701f8> line mutex_bug.rb:46 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210701f8> c-call mutex_bug.rb:46 sleep Kernel 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210a8fd0> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210a8fd0> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea210a8fd0> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:49 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:49 kill Thread 0
#<Thread:0x007fea21058558> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210701f8> c-return mutex_bug.rb:46 sleep Kernel 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:49 kill Thread 0
#<Thread:0x007fea21058558> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:50 0
#<Thread:0x007fea21058558> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:50 join Thread 0
#<Thread:0x007fea21058558> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:50 join Thread 0
#<Thread:0x007fea21058558> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea21058558> 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:44 #<Thread:0x007fea21058558> 0
#<Thread:0x007fea21058558> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea21058558> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:44 new Thread #<Thread:0x007fea21058558> 1
#<Thread:0x007fea21058558> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea21058558> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:44 initialize Thread #<Thread:0x007fea21058558> 1
#<Thread:0x007fea21058558> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea21058558> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:44 initialize Thread #<Thread:0x007fea21058558> 1
#<Thread:0x007fea21041a88> line mutex_bug.rb:45 #<Thread:0x007fea21058558> 1
#<Thread:0x007fea21058558> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea21058558> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:44 new Thread #<Thread:0x007fea21058558> 1
#<Thread:0x007fea21041a88> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea21058558> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:48 #<Thread:0x007fea21058558> 1
#<Thread:0x007fea21041a88> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea21058558> 1
#<Thread:0x007fea21058558> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea21058558> 1
#<Thread:0x007fea21041a88> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea21058558> 1
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea21058558> 1
#<Thread:0x007fea21058558> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea21058558> 1
#<Thread:0x007fea21041a88> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea21058558> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea21058558> 1
#<Thread:0x007fea21058558> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea21058558> 1
#<Thread:0x007fea21041a88> c-call mutex_bug.rb:11 current Thread #<Thread:0x007fea21058558> 1
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea21058558> 1
#<Thread:0x007fea21058558> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea21058558> 1
#<Thread:0x007fea21041a88> c-return mutex_bug.rb:11 current Thread #<Thread:0x007fea21058558> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea21058558> 1
#<Thread:0x007fea21058558> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea21058558> 1
#<Thread:0x007fea21041a88> line mutex_bug.rb:12 mon_enter MyMonitor #<Thread:0x007fea21058558> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:11 current Thread #<Thread:0x007fea21058558> 1
#<Thread:0x007fea21041a88> c-call mutex_bug.rb:12 lock Mutex #<Thread:0x007fea21058558> 1
#<Thread:0x007fea21058558> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea21058558> 1
#<Thread:0x007fea21058558> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea21058558> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:11 current Thread #<Thread:0x007fea21058558> 1
#<Thread:0x007fea21058558> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea21058558> 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:12 mon_enter MyMonitor #<Thread:0x007fea21058558> 0
#<Thread:0x007fea21058558> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea21058558> 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:12 lock Mutex #<Thread:0x007fea21058558> 0
#<Thread:0x007fea21058558> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea21058558> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea21058558> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea21058558> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea21058558> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea21058558> line mutex_bug.rb:46 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea21058558> c-call mutex_bug.rb:46 sleep Kernel 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea21041a88> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210aa010> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea21041a88> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea210aa010> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea21041a88> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:49 0
#<Thread:0x007fea21041a88> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:49 kill Thread 0
#<Thread:0x007fea21041a88> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea21041a88> 0 #<Thread:0x007fea210aa010> c-return mutex_bug.rb:49 kill Thread #<Thread:0x007fea21041a88> 0

#<Thread:0x007fea21058558> c-return mutex_bug.rb:46 sleep Kernel #<Thread:0x007fea21041a88> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:50 #<Thread:0x007fea21041a88> 0
#<Thread:0x007fea21041a88> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:50 join Thread #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea21041a88> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:50 join Thread #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea21041a88> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:44 #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea21041a88> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:44 new Thread #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea21041a88> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:44 initialize Thread #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea21041a88> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea21029d70> line mutex_bug.rb:45 #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:44 initialize Thread #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea21029d70> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:44 new Thread #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea21029d70> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea21041a88> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea21029d70> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:48 #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea21029d70> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea210aa010> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea21041a88> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea21029d70> c-call mutex_bug.rb:11 current Thread #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea210aa010> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea21041a88> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea21029d70> c-return mutex_bug.rb:11 current Thread #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea21029d70> line mutex_bug.rb:12 mon_enter MyMonitor #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:11 current Thread #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea21041a88> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea21041a88> 1 #<Thread:0x007fea21029d70> c-call mutex_bug.rb:12 lock Mutex #<Thread:0x007fea21041a88> 1

#<Thread:0x007fea210aa010> c-return mutex_bug.rb:11 current Thread #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea21041a88> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:12 mon_enter MyMonitor #<Thread:0x007fea21041a88> 1
#<Thread:0x007fea21041a88> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea21041a88> 0 #<Thread:0x007fea210aa010> c-call mutex_bug.rb:12 lock Mutex #<Thread:0x007fea21041a88> 0

#<Thread:0x007fea21041a88> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea21041a88> 0
#<Thread:0x007fea21041a88> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea21041a88> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea21041a88> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea21041a88> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea21041a88> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea21041a88> line mutex_bug.rb:46 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea21041a88> c-call mutex_bug.rb:46 sleep Kernel 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210a8fd0> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210a8fd0> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea210a8fd0> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:49 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:49 kill Thread 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:49 kill Thread 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:50 0
#<Thread:0x007fea21029d70> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea21041a88> c-return mutex_bug.rb:46 sleep Kernel 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:50 join Thread 0
#<Thread:0x007fea21029d70> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:50 join Thread 0
#<Thread:0x007fea21029d70> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:44 0
#<Thread:0x007fea21029d70> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:44 new Thread 0
#<Thread:0x007fea21029d70> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea21029d70> 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:44 initialize Thread #<Thread:0x007fea21029d70> 0
#<Thread:0x007fea21029d70> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:44 initialize Thread #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea21029d70> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:44 new Thread #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea21029d70> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:48 #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea2107bbe8> line mutex_bug.rb:45 #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea21029d70> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea21029d70> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea21029d70> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea21029d70> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea21029d70> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:11 current Thread #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea21029d70> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:11 current Thread #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea21029d70> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:12 mon_enter MyMonitor #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea21029d70> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:12 lock Mutex #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea2107bbe8> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea21029d70> 1
#<Thread:0x007fea21029d70> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea21029d70> 0
#<Thread:0x007fea2107bbe8> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea21029d70> 0
#<Thread:0x007fea21029d70> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea21029d70> 0
#<Thread:0x007fea2107bbe8> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea21029d70> 0
#<Thread:0x007fea21029d70> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea2107bbe8> line mutex_bug.rb:11 mon_enter MyMonitor 0
#<Thread:0x007fea21029d70> c-call mutex_bug.rb:22 unlock Mutex 0 #<Thread:0x007fea2107bbe8> c-call mutex_bug.rb:11 current Thread 0

#<Thread:0x007fea2107bbe8> c-return mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea21029d70> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea2107bbe8> line mutex_bug.rb:12 mon_enter MyMonitor 0
#<Thread:0x007fea21029d70> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea21029d70> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea2107bbe8> c-call mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea21029d70> line mutex_bug.rb:46 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea21029d70> c-call mutex_bug.rb:46 sleep Kernel 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210aa010> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210aa010> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:49 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:49 kill Thread 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:49 kill Thread 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:50 #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210a8fd0> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea21029d70> c-return mutex_bug.rb:46 sleep Kernel #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:50 join Thread #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:50 join Thread #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:44 #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:44 new Thread #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:44 initialize Thread #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:44 initialize Thread #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea2103b750> line mutex_bug.rb:45 #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:44 new Thread #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea2103b750> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:48 #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea2103b750> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea2103b750> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea2103b750> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210aa010> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea2103b750> c-call mutex_bug.rb:11 current Thread #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea2103b750> c-return mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea2103b750> line mutex_bug.rb:12 mon_enter MyMonitor 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:12 mon_enter MyMonitor 0
#<Thread:0x007fea2103b750> c-call mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea2107bbe8> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210a8fd0> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea2107bbe8> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea210a8fd0> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea2107bbe8> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:49 0
#<Thread:0x007fea2107bbe8> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:49 kill Thread 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:49 kill Thread #<Thread:0x007fea2107bbe8> 0
#<Thread:0x007fea2107bbe8> return mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea2107bbe8> 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:50 #<Thread:0x007fea2107bbe8> 0
#<Thread:0x007fea2107bbe8> return mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea2107bbe8> 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:50 join Thread #<Thread:0x007fea2107bbe8> 0
#<Thread:0x007fea2103b750> c-return mutex_bug.rb:12 lock Mutex #<Thread:0x007fea2107bbe8> 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:50 join Thread #<Thread:0x007fea2107bbe8> 0
#<Thread:0x007fea2103b750> line mutex_bug.rb:13 mon_enter MyMonitor #<Thread:0x007fea2107bbe8> 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:44 #<Thread:0x007fea2107bbe8> 0
#<Thread:0x007fea2103b750> c-call mutex_bug.rb:13 current Thread #<Thread:0x007fea2107bbe8> 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:44 new Thread #<Thread:0x007fea2107bbe8> 0
#<Thread:0x007fea2103b750> c-return mutex_bug.rb:13 current Thread #<Thread:0x007fea2107bbe8> 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:44 initialize Thread #<Thread:0x007fea2107bbe8> 0
#<Thread:0x007fea2103b750> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea2103b750> 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:44 initialize Thread #<Thread:0x007fea2103b750> 0
#<Thread:0x007fea2103b750> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:44 new Thread #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea2103b750> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea2102bc60> line mutex_bug.rb:45 #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:48 #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea2103b750> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea2102bc60> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea2103b750> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea2103b750> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea2102bc60> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea2103b750> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea2103b750> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea2102bc60> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea2103b750> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea2102bc60> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea2103b750> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea2102bc60> c-call mutex_bug.rb:11 current Thread #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea2102bc60> c-return mutex_bug.rb:11 current Thread #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea2103b750> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea2102bc60> line mutex_bug.rb:12 mon_enter MyMonitor #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea2102bc60> c-call mutex_bug.rb:12 lock Mutex #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea2103b750> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:11 current Thread #<Thread:0x007fea2103b750> 1
#<Thread:0x007fea2103b750> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea2103b750> 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:11 current Thread #<Thread:0x007fea2103b750> 0
#<Thread:0x007fea2103b750> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea2103b750> 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:12 mon_enter MyMonitor #<Thread:0x007fea2103b750> 0
#<Thread:0x007fea2103b750> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea2103b750> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea2103b750> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea2103b750> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea2103b750> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea2103b750> line mutex_bug.rb:46 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea2103b750> c-call mutex_bug.rb:46 sleep Kernel 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210aa010> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea210aa010> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea2102bc60> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:49 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:49 kill Thread 0 #<Thread:0x007fea2102bc60> line mutex_bug.rb:13 mon_enter MyMonitor 0

#<Thread:0x007fea2102bc60> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:49 kill Thread 0
#<Thread:0x007fea2102bc60> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea2103b750> c-return mutex_bug.rb:46 sleep Kernel 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:50 0
#<Thread:0x007fea2102bc60> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea2102bc60> 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:50 join Thread #<Thread:0x007fea2102bc60> 0
#<Thread:0x007fea2102bc60> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:50 join Thread #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea2102bc60> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:44 #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea2102bc60> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:44 new Thread #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea2102bc60> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:44 initialize Thread #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea2102bc60> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:44 initialize Thread #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea21083578> line mutex_bug.rb:45 #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea2102bc60> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea21083578> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:44 new Thread #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea2102bc60> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:48 #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea21083578> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea210aa010> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea2102bc60> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea2102bc60> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea2102bc60> 1 #<Thread:0x007fea210aa010> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea21083578> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea210aa010> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea2102bc60> 1

#<Thread:0x007fea21083578> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea2102bc60> 1 #<Thread:0x007fea210aa010> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea2102bc60> 1

#<Thread:0x007fea2102bc60> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea21083578> c-call mutex_bug.rb:11 current Thread #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:11 current Thread #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea21083578> c-return mutex_bug.rb:11 current Thread #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea2102bc60> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea21083578> line mutex_bug.rb:12 mon_enter MyMonitor #<Thread:0x007fea2102bc60> 1
#<Thread:0x007fea2102bc60> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea2102bc60> 0 #<Thread:0x007fea210aa010> c-return mutex_bug.rb:11 current Thread #<Thread:0x007fea2102bc60> 1

#<Thread:0x007fea21083578> c-call mutex_bug.rb:12 lock Mutex #<Thread:0x007fea2102bc60> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:12 mon_enter MyMonitor #<Thread:0x007fea2102bc60> 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:12 lock Mutex #<Thread:0x007fea2102bc60> 0
#<Thread:0x007fea2102bc60> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea2102bc60> 0
#<Thread:0x007fea2102bc60> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea2102bc60> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea2102bc60> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea2102bc60> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea2102bc60> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea2102bc60> line mutex_bug.rb:46 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea2102bc60> c-call mutex_bug.rb:46 sleep Kernel 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210a8fd0> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210a8fd0> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea21083578> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210a8fd0> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea21083578> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:49 0
#<Thread:0x007fea21083578> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:49 kill Thread 0
#<Thread:0x007fea21083578> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:49 kill Thread 0
#<Thread:0x007fea2102bc60> c-return mutex_bug.rb:46 sleep Kernel #<Thread:0x007fea21083578> 0
#<Thread:0x007fea21083578> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea21083578> 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:50 #<Thread:0x007fea21083578> 0
#<Thread:0x007fea21083578> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea21083578> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:50 join Thread #<Thread:0x007fea21083578> 1
#<Thread:0x007fea21083578> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea21083578> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:50 join Thread #<Thread:0x007fea21083578> 1
#<Thread:0x007fea21083578> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea21083578> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:44 #<Thread:0x007fea21083578> 1
#<Thread:0x007fea21083578> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea21083578> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:44 new Thread #<Thread:0x007fea21083578> 1
#<Thread:0x007fea21083578> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea21083578> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:44 initialize Thread #<Thread:0x007fea21083578> 1
#<Thread:0x007fea21083578> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea21083578> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:44 initialize Thread #<Thread:0x007fea21083578> 1 #<Thread:0x007fea21083578> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea21083578> 1
#<Thread:0x007fea2104be98> line mutex_bug.rb:45 #<Thread:0x007fea21083578> 1
#<Thread:0x007fea21083578> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea21083578> 1

#<Thread:0x007fea2104be98> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea21083578> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:44 new Thread #<Thread:0x007fea21083578> 1
#<Thread:0x007fea21083578> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea21083578> 1
#<Thread:0x007fea2104be98> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea21083578> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:48 #<Thread:0x007fea21083578> 1
#<Thread:0x007fea21083578> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea21083578> 1
#<Thread:0x007fea2104be98> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea21083578> 1
#<Thread:0x007fea21083578> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea21083578> 1
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea21083578> 1
#<Thread:0x007fea21083578> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea21083578> 0
#<Thread:0x007fea2104be98> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea21083578> 1
#<Thread:0x007fea21083578> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea21083578> 0
#<Thread:0x007fea2104be98> c-call mutex_bug.rb:11 current Thread #<Thread:0x007fea21083578> 0
#<Thread:0x007fea21083578> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea21083578> 0
#<Thread:0x007fea2104be98> c-return mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:10 mon_enter MyMonitor 0
#<Thread:0x007fea2104be98> line mutex_bug.rb:12 mon_enter MyMonitor 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:11 mon_enter MyMonitor 0
#<Thread:0x007fea21083578> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea2104be98> c-call mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea21083578> c-return mutex_bug.rb:22 unlock Mutex 0 #<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:11 current Thread 0

#<Thread:0x007fea210aa010> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea21083578> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:12 mon_enter MyMonitor 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea21083578> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea21083578> line mutex_bug.rb:46 #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea21083578> c-call mutex_bug.rb:46 sleep Kernel #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210aa010> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea210aa010> return mutex_bug.rb:30 stuff MyMonitor 0 #<Thread:0x007fea2104be98> c-return mutex_bug.rb:12 lock Mutex 0

#<Thread:0x007fea210aa010> line mutex_bug.rb:49 0
#<Thread:0x007fea2104be98> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:49 kill Thread 0
#<Thread:0x007fea2104be98> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:49 kill Thread 0
#<Thread:0x007fea2104be98> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea21083578> c-return mutex_bug.rb:46 sleep Kernel 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:50 0
#<Thread:0x007fea2104be98> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea2104be98> 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:50 join Thread #<Thread:0x007fea2104be98> 0
#<Thread:0x007fea2104be98> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:50 join Thread #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea2104be98> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:44 #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea2104be98> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:44 new Thread #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea2104be98> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:44 initialize Thread #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea2104be98> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:44 initialize Thread #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea21088ca8> line mutex_bug.rb:45 #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:44 new Thread #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea21088ca8> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea2104be98> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:48 #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea21088ca8> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea2104be98> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea21088ca8> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea210aa010> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea2104be98> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea21088ca8> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea2104be98> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea21088ca8> c-call mutex_bug.rb:11 current Thread #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea2104be98> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea21088ca8> c-return mutex_bug.rb:11 current Thread #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea210aa010> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea2104be98> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea21088ca8> line mutex_bug.rb:12 mon_enter MyMonitor #<Thread:0x007fea2104be98> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:11 current Thread #<Thread:0x007fea2104be98> 0
#<Thread:0x007fea2104be98> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea2104be98> 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:11 current Thread #<Thread:0x007fea2104be98> 0
#<Thread:0x007fea21088ca8> c-call mutex_bug.rb:12 lock Mutex #<Thread:0x007fea2104be98> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:12 mon_enter MyMonitor #<Thread:0x007fea2104be98> 0
#<Thread:0x007fea2104be98> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea2104be98> 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:12 lock Mutex #<Thread:0x007fea2104be98> 0
#<Thread:0x007fea2104be98> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea2104be98> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea2104be98> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea2104be98> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea2104be98> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea2104be98> line mutex_bug.rb:46 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea2104be98> c-call mutex_bug.rb:46 sleep Kernel #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210a8fd0> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea21088ca8> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210a8fd0> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea21088ca8> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea210a8fd0> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea21088ca8> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:49 0
#<Thread:0x007fea21088ca8> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:49 kill Thread 0
#<Thread:0x007fea21088ca8> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea21088ca8> 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:49 kill Thread #<Thread:0x007fea21088ca8> 0 #<Thread:0x007fea21088ca8> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea21088ca8> 1
#<Thread:0x007fea2104be98> c-return mutex_bug.rb:46 sleep Kernel #<Thread:0x007fea21088ca8> 1
#<Thread:0x007fea21088ca8> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea21088ca8> 1

#<Thread:0x007fea21088ca8> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea21088ca8> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:50 #<Thread:0x007fea21088ca8> 1
#<Thread:0x007fea21088ca8> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea21088ca8> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:50 join Thread #<Thread:0x007fea21088ca8> 1
#<Thread:0x007fea21088ca8> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea21088ca8> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:50 join Thread #<Thread:0x007fea21088ca8> 1
#<Thread:0x007fea21088ca8> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea21088ca8> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:44 #<Thread:0x007fea21088ca8> 1
#<Thread:0x007fea21088ca8> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea21088ca8> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:44 new Thread #<Thread:0x007fea21088ca8> 1
#<Thread:0x007fea21088ca8> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea21088ca8> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:44 initialize Thread #<Thread:0x007fea21088ca8> 1
#<Thread:0x007fea21088ca8> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea21088ca8> 1 #<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:44 initialize Thread #<Thread:0x007fea21088ca8> 1

#<Thread:0x007fea21098c70> line mutex_bug.rb:45 #<Thread:0x007fea21088ca8> 1
#<Thread:0x007fea21088ca8> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea21088ca8> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:44 new Thread #<Thread:0x007fea21088ca8> 1
#<Thread:0x007fea21098c70> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea21088ca8> 1
#<Thread:0x007fea21088ca8> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea21088ca8> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:48 #<Thread:0x007fea21088ca8> 1
#<Thread:0x007fea21088ca8> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea21088ca8> 0
#<Thread:0x007fea21098c70> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea21088ca8> 1
#<Thread:0x007fea21088ca8> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea21088ca8> 0
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea21088ca8> 0
#<Thread:0x007fea21088ca8> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea21098c70> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea21088ca8> 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:27 stuff MyMonitor 0
#<Thread:0x007fea21088ca8> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:10 mon_enter MyMonitor 0
#<Thread:0x007fea21088ca8> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:11 mon_enter MyMonitor 0
#<Thread:0x007fea21088ca8> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea21098c70> line mutex_bug.rb:11 mon_enter MyMonitor 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea21088ca8> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea21098c70> c-call mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea21098c70> c-return mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea21088ca8> line mutex_bug.rb:46 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:12 mon_enter MyMonitor 0
#<Thread:0x007fea21088ca8> c-call mutex_bug.rb:46 sleep Kernel 0
#<Thread:0x007fea21098c70> line mutex_bug.rb:12 mon_enter MyMonitor 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:12 lock Mutex #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea21098c70> c-call mutex_bug.rb:12 lock Mutex #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea210aa010> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea210aa010> 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea210aa010> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210aa010> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:49 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:49 kill Thread 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea21088ca8> c-return mutex_bug.rb:46 sleep Kernel 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:49 kill Thread 0
#<Thread:0x007fea210a8fd0> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:50 #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:50 join Thread #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:50 join Thread #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:44 #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:44 new Thread #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:44 initialize Thread #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:44 initialize Thread #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea21061450> line mutex_bug.rb:45 #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea21061450> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea21061450> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:44 new Thread #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:48 #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea21061450> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 1
#<Thread:0x007fea210aa010> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea210a8fd0> 0 #<Thread:0x007fea210a8fd0> line mutex_bug.rb:21 mon_exit MyMonitor #<Thread:0x007fea210a8fd0> 0

#<Thread:0x007fea21061450> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea210a8fd0> 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:22 mon_exit MyMonitor 0
#<Thread:0x007fea210aa010> call mutex_bug.rb:10 mon_enter MyMonitor 0
#<Thread:0x007fea21061450> c-call mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea21061450> c-return mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea21061450> line mutex_bug.rb:12 mon_enter MyMonitor 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:11 mon_enter MyMonitor 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea21061450> c-call mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea21098c70> c-return mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea21098c70> line mutex_bug.rb:13 mon_enter MyMonitor 0
#<Thread:0x007fea210aa010> c-return mutex_bug.rb:11 current Thread 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:22 unlock Mutex 0
#<Thread:0x007fea21098c70> c-call mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210aa010> line mutex_bug.rb:12 mon_enter MyMonitor 0
#<Thread:0x007fea210a8fd0> return mutex_bug.rb:24 mon_exit MyMonitor 0
#<Thread:0x007fea210aa010> c-call mutex_bug.rb:12 lock Mutex 0
#<Thread:0x007fea210a8fd0> return mutex_bug.rb:30 stuff MyMonitor 0
#<Thread:0x007fea21098c70> c-return mutex_bug.rb:13 current Thread 0
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:49 0
#<Thread:0x007fea21098c70> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea21098c70> 0
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:49 kill Thread #<Thread:0x007fea21098c70> 0
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:49 kill Thread #<Thread:0x007fea21098c70> 1
#<Thread:0x007fea21098c70> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea21098c70> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:50 #<Thread:0x007fea21098c70> 1
#<Thread:0x007fea21098c70> return mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea21098c70> 1 #<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:50 join Thread #<Thread:0x007fea21098c70> 1

#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:50 join Thread #<Thread:0x007fea21098c70> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:44 #<Thread:0x007fea21098c70> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:44 new Thread #<Thread:0x007fea21098c70> 1
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:44 initialize Thread #<Thread:0x007fea21098c70> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:44 initialize Thread #<Thread:0x007fea21098c70> 1
#<Thread:0x007fea21061450> c-return mutex_bug.rb:12 lock Mutex #<Thread:0x007fea21098c70> 1
#<Thread:0x007fea21061450> line mutex_bug.rb:13 mon_enter MyMonitor #<Thread:0x007fea21098c70> 1
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:44 new Thread #<Thread:0x007fea21098c70> 1
#<Thread:0x007fea21061450> c-call mutex_bug.rb:13 current Thread #<Thread:0x007fea21098c70> 1
#<Thread:0x007fea21031e58> line mutex_bug.rb:45 #<Thread:0x007fea21098c70> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:48 #<Thread:0x007fea21098c70> 1
#<Thread:0x007fea21061450> c-return mutex_bug.rb:13 current Thread #<Thread:0x007fea21098c70> 1
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea21098c70> 1
#<Thread:0x007fea21031e58> call mutex_bug.rb:26 stuff MyMonitor #<Thread:0x007fea21098c70> 1
#<Thread:0x007fea21061450> line mutex_bug.rb:15 mon_enter MyMonitor #<Thread:0x007fea21061450> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea21061450> 1
#<Thread:0x007fea21061450> return mutex_bug.rb:16 mon_enter MyMonitor #<Thread:0x007fea21061450> 2
#<Thread:0x007fea210a8fd0> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea21061450> 2
#<Thread:0x007fea21031e58> line mutex_bug.rb:27 stuff MyMonitor #<Thread:0x007fea21061450> 1
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea21061450> 2
#<Thread:0x007fea21031e58> call mutex_bug.rb:10 mon_enter MyMonitor #<Thread:0x007fea21061450> 2
#<Thread:0x007fea21061450> line mutex_bug.rb:28 stuff MyMonitor #<Thread:0x007fea21061450> 2
#<Thread:0x007fea21031e58> line mutex_bug.rb:11 mon_enter MyMonitor #<Thread:0x007fea21061450> 2
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:11 current Thread #<Thread:0x007fea21061450> 2
#<Thread:0x007fea21031e58> c-call mutex_bug.rb:11 current Thread #<Thread:0x007fea21061450> 2
#<Thread:0x007fea21061450> c-call mutex_bug.rb:28 print Kernel #<Thread:0x007fea21061450> 2
#<Thread:0x007fea210a8fd0> c-return mutex_bug.rb:11 current Thread #<Thread:0x007fea21061450> 2
#<Thread:0x007fea21031e58> c-return mutex_bug.rb:11 current Thread #<Thread:0x007fea21061450> 2
#<Thread:0x007fea210a8fd0> line mutex_bug.rb:12 mon_enter MyMonitor #<Thread:0x007fea21061450> 2
#<Thread:0x007fea21031e58> line mutex_bug.rb:12 mon_enter MyMonitor #<Thread:0x007fea21061450> 2
#<Thread:0x007fea210a8fd0> c-call mutex_bug.rb:12 lock Mutex #<Thread:0x007fea21061450> 2
#<Thread:0x007fea21061450> c-call mutex_bug.rb:28 write IO #<Thread:0x007fea21061450> 2
#<Thread:0x007fea21031e58> c-call mutex_bug.rb:12 lock Mutex #<Thread:0x007fea21061450> 2
#<Thread:0x007fea21061450> c-call mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea21061450> 2
#<Thread:0x007fea21061450> c-return mutex_bug.rb:28 to_s NilClass #<Thread:0x007fea21061450> 2
#<Thread:0x007fea21061450> c-return mutex_bug.rb:28 write IO #<Thread:0x007fea21061450> 2
#<Thread:0x007fea21061450> c-return mutex_bug.rb:28 print Kernel #<Thread:0x007fea21061450> 2
#<Thread:0x007fea21061450> line mutex_bug.rb:29 stuff MyMonitor #<Thread:0x007fea21061450> 2
#<Thread:0x007fea21061450> call mutex_bug.rb:18 mon_exit MyMonitor #<Thread:0x007fea21061450> 2
#<Thread:0x007fea21061450> line mutex_bug.rb:19 mon_exit MyMonitor #<Thread:0x007fea21061450> 2
#<Thread:0x007fea21061450> line mutex_bug.rb:20 mon_exit MyMonitor #<Thread:0x007fea21061450> 1
#<Thread:0x007fea21061450> return mutex_bug.rb:24 mon_exit MyMonitor #<Thread:0x007fea21061450> 1
#<Thread:0x007fea21061450> return mutex_bug.rb:30 stuff MyMonitor #<Thread:0x007fea21061450> 1
#<Thread:0x007fea21061450> line mutex_bug.rb:46 #<Thread:0x007fea21061450> 1
#<Thread:0x007fea21061450> c-call mutex_bug.rb:46 sleep Kernel #<Thread:0x007fea21061450> 1
^C #<Thread:0x007fea210c0298> c-call mutex_bug.rb:53 new Class #<Thread:0x007fea21061450> 1
#<Thread:0x007fea210c0298> c-call mutex_bug.rb:53 initialize Interrupt #<Thread:0x007fea21061450> 1
#<Thread:0x007fea210c0298> c-call mutex_bug.rb:53 initialize SignalException #<Thread:0x007fea21061450> 1
#<Thread:0x007fea210c0298> c-call mutex_bug.rb:53 initialize Exception #<Thread:0x007fea21061450> 1
#<Thread:0x007fea210c0298> c-return mutex_bug.rb:53 initialize Exception #<Thread:0x007fea21061450> 1
#<Thread:0x007fea210c0298> c-return mutex_bug.rb:53 initialize SignalException #<Thread:0x007fea21061450> 1
#<Thread:0x007fea210c0298> c-return mutex_bug.rb:53 initialize Interrupt #<Thread:0x007fea21061450> 1
#<Thread:0x007fea210c0298> c-return mutex_bug.rb:53 new Class #<Thread:0x007fea21061450> 1
#<Thread:0x007fea210c0298> c-call mutex_bug.rb:53 exception Exception #<Thread:0x007fea21061450> 1
#<Thread:0x007fea210c0298> c-return mutex_bug.rb:53 exception Exception #<Thread:0x007fea21061450> 1
#<Thread:0x007fea210c0298> c-call mutex_bug.rb:53 backtrace Exception #<Thread:0x007fea21061450> 1
#<Thread:0x007fea210c0298> c-return mutex_bug.rb:53 backtrace Exception #<Thread:0x007fea21061450> 1
#<Thread:0x007fea210c0298> raise mutex_bug.rb:53 join Thread #<Thread:0x007fea21061450> 1
#<Thread:0x007fea210c0298> c-return mutex_bug.rb:53 join Thread #<Thread:0x007fea21061450> 1
#<Thread:0x007fea210c0298> c-return mutex_bug.rb:53 each Array #<Thread:0x007fea21061450> 1
mutex_bug.rb:53:in `join': Interrupt
from mutex_bug.rb:53:in `each'
from mutex_bug.rb:53:in `<main>'
(2-2/5)