[MacRuby-devel] [MacRuby] #794: `pthread_mutex_unlock(&t->sleep_mutex)' failed: Invalid argument (22)

MacRuby ruby-noreply at macosforge.org
Thu Jul 15 22:30:58 PDT 2010


#794: `pthread_mutex_unlock(&t->sleep_mutex)' failed: Invalid argument (22)
----------------------------------+-----------------------------------------
 Reporter:  watson1978@…          |       Owner:  lsansonetti@…        
     Type:  defect                |      Status:  new                  
 Priority:  blocker               |   Milestone:                       
Component:  MacRuby               |    Keywords:                       
----------------------------------+-----------------------------------------

Comment(by watson1978@…):

 The stack trace was as follows when I compiled with "rake optz_level=0"
 for MacRuby.

 {{{
 $ DYLD_LIBRARY_PATH=. gdb --args ./macruby -I./lib test_require.rb
 GNU gdb 6.3.50-20050815 (Apple version gdb-1461.2) (Fri Mar  5 04:43:10
 UTC 2010)
 Copyright 2004 Free Software Foundation, Inc.
 GDB is free software, covered by the GNU General Public License, and you
 are
 welcome to change it and/or distribute copies of it under certain
 conditions.
 Type "show copying" to see the conditions.
 There is absolutely no warranty for GDB.  Type "show warranty" for
 details.
 This GDB was configured as "x86_64-apple-darwin"...Reading symbols for
 shared libraries ..... done

 (gdb) r
 Starting program: /Users/watson/src/MacRuby/macruby -I./lib
 test_require.rb
 Reading symbols for shared libraries .++++.......................... done
 Reading symbols for shared libraries . done
 Reading symbols for shared libraries . done
 Reading symbols for shared libraries . done
 Reading symbols for shared libraries warning: .o file
 "/Users/watson/src/MacRuby/ext/etc/etc.o" more recent than executable
 timestamp in
 "/Library/Frameworks/MacRuby.framework/Versions/0.7/usr/lib/ruby/site_ruby/1.9.2
 /universal-darwin10.0/etc.bundle"
 warning: Could not open OSO file /Users/watson/src/MacRuby/ext/etc/etc.o
 to scan for pubtypes for objfile
 /Library/Frameworks/MacRuby.framework/Versions/0.7/usr/lib/ruby/site_ruby/1.9.2
 /universal-darwin10.0/etc.bundle
 . done
 Reading symbols for shared libraries . done
 Reading symbols for shared libraries . done
 Reading symbols for shared libraries . done
 Loaded suite test_require
 Started
 Reading symbols for shared libraries warning: .o file
 "/Users/watson/src/MacRuby/ext/socket/socket.o" more recent than
 executable timestamp in
 "/Library/Frameworks/MacRuby.framework/Versions/0.7/usr/lib/ruby/site_ruby/1.9.2
 /universal-darwin10.0/socket.bundle"
 warning: Could not open OSO file
 /Users/watson/src/MacRuby/ext/socket/socket.o to scan for pubtypes for
 objfile
 /Library/Frameworks/MacRuby.framework/Versions/0.7/usr/lib/ruby/site_ruby/1.9.2
 /universal-darwin10.0/socket.bundle
 . done
 pthread command `pthread_mutex_unlock(&t->sleep_mutex)' failed: Invalid
 argument (22)

 Program received signal SIGABRT, Aborted.
 0x00007fff815783d6 in __kill ()
 (gdb) thread apply all bt

 Thread 2 (process 84759):
 #0  0x00007fff8154308a in kevent ()
 #1  0x00007fff81544f5d in _dispatch_mgr_invoke ()
 #2  0x00007fff81544c34 in _dispatch_queue_invoke ()
 #3  0x00007fff8154475e in _dispatch_worker_thread2 ()
 #4  0x00007fff81544088 in _pthread_wqthread ()
 #5  0x00007fff81543f25 in start_wqthread ()

 Thread 1 (process 84759):
 #0  0x00007fff815783d6 in __kill ()
 #1  0x00007fff81618972 in abort ()
 #2  0x000000010013b9c4 in rb_vm_thread_cancel (t=0x2002a24e0) at
 vm.cpp:4598
 #3  0x00000001000c9efc in rb_thread_kill (thread=8592547008,
 sel=0x101937e40) at thread.c:332
 #4  0x000000010012e980 in __rb_vm_rcall [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:159
 #5  0x000000010012e980 in ruby_dispatch [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:453
 #6  0x000000010012e980 in rb_vm_dispatch () at dispatcher.cpp:816
 #7  0x0000000103d5aa20 in ?? ()
 #8  0x0000000103d93e36 in ?? ()
 #9  0x000000010012eb2c in __rb_vm_rcall [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:170
 #10 0x000000010012eb2c in ruby_dispatch [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:453
 #11 0x000000010012eb2c in rb_vm_dispatch () at dispatcher.cpp:816
 #12 0x0000000103d5aa20 in ?? ()
 #13 0x0000000103d9bddb in ?? ()
 #14 0x000000010012ebb4 in __rb_vm_rcall [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:173
 #15 0x000000010012ebb4 in ruby_dispatch [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:453
 #16 0x000000010012ebb4 in rb_vm_dispatch () at dispatcher.cpp:816
 #17 0x0000000103d5aa20 in ?? ()
 #18 0x0000000103d9b926 in ?? ()
 #19 0x000000010012e980 in __rb_vm_rcall [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:159
 #20 0x000000010012e980 in ruby_dispatch [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:453
 #21 0x000000010012e980 in rb_vm_dispatch () at dispatcher.cpp:816
 #22 0x00000001000e0e88 in rb_vm_call0 (vm=0x10161e500, top=0,
 self=8592095264, klass=0x2002b4920, sel=0x1019c8230, block=0x0, opt=2
 '\002', argc=0, argv=0x7fff5fbf8eb8) at vm.h:595
 #23 0x00000001000e1f59 in rb_vm_call2 (block=0x0, self=8592095264,
 klass=8592771360, sel=0x1019c8230, argc=0, argv=0x7fff5fbf8eb8) at
 vm.h:620
 #24 0x00000001000e1ec0 in rb_call (recv=8592095264, mid=15672, argc=0,
 argv=0x7fff5fbf8eb8, scope=3, pass_current_block=true) at vm_eval.c:45
 #25 0x00000001000e227a in send_internal (argc=0, argv=0x7fff5fbf8eb8,
 recv=8592095264, scope=3) at vm_eval.c:144
 #26 0x00000001000e22a8 in rb_f_send (recv=8592095264, sel=0x10165d410,
 argc=1, argv=0x7fff5fbf8eb0) at vm_eval.c:168
 #27 0x000000010012e381 in ruby_dispatch [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:435
 #28 0x000000010012e381 in rb_vm_dispatch () at dispatcher.cpp:816
 #29 0x0000000103d5aa20 in ?? ()
 #30 0x0000000103d9a825 in ?? ()
 #31 0x000000010012e9b2 in __rb_vm_rcall [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:161
 #32 0x000000010012e9b2 in ruby_dispatch [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:453
 #33 0x000000010012e9b2 in rb_vm_dispatch () at dispatcher.cpp:816
 #34 0x0000000103d5aa20 in ?? ()
 #35 0x0000000103d99f37 in ?? ()
 #36 0x0000000100134c13 in __rb_vm_bcall [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:100
 #37 0x0000000100134c13 in vm_block_eval [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:1162
 #38 0x0000000100134c13 in rb_vm_yield_args () at dispatcher.cpp:1217
 #39 0x00000001000e233e in rb_vm_yield (argc=1, argv=0x7fff5fbfa418) at
 vm.h:629
 #40 0x00000001000e2311 in rb_yield (val=8590921920) at vm_eval.c:196
 #41 0x0000000100016b87 in rary_each (ary=8590880704, sel=0x101641600) at
 array.c:1064
 #42 0x000000010012e980 in __rb_vm_rcall [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:159
 #43 0x000000010012e980 in ruby_dispatch [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:453
 #44 0x000000010012e980 in rb_vm_dispatch () at dispatcher.cpp:816
 #45 0x0000000103d5aa20 in ?? ()
 #46 0x0000000103d9942f in ?? ()
 #47 0x0000000100134c13 in __rb_vm_bcall [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:100
 #48 0x0000000100134c13 in vm_block_eval [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:1162
 #49 0x0000000100134c13 in rb_vm_yield_args () at dispatcher.cpp:1217
 #50 0x00000001000e233e in rb_vm_yield (argc=1, argv=0x7fff5fbfb9a8) at
 vm.h:629
 #51 0x00000001000e2311 in rb_yield (val=8592771360) at vm_eval.c:196
 #52 0x0000000100016b87 in rary_each (ary=8592649632, sel=0x101641600) at
 array.c:1064
 #53 0x000000010012e980 in __rb_vm_rcall [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:159
 #54 0x000000010012e980 in ruby_dispatch [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:453
 #55 0x000000010012e980 in rb_vm_dispatch () at dispatcher.cpp:816
 #56 0x0000000103d5aa20 in ?? ()
 #57 0x0000000103d98c17 in ?? ()
 #58 0x000000010012e9b2 in __rb_vm_rcall [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:161
 #59 0x000000010012e9b2 in ruby_dispatch [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:453
 #60 0x000000010012e9b2 in rb_vm_dispatch () at dispatcher.cpp:816
 #61 0x0000000103d5aa20 in ?? ()
 #62 0x0000000103d96a45 in ?? ()
 #63 0x000000010012e9b2 in __rb_vm_rcall [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:161
 #64 0x000000010012e9b2 in ruby_dispatch [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:453
 #65 0x000000010012e9b2 in rb_vm_dispatch () at dispatcher.cpp:816
 #66 0x0000000103d5aa20 in ?? ()
 #67 0x0000000103d74941 in ?? ()
 #68 0x0000000100132baf in __rb_vm_bcall [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:98
 #69 0x0000000100132baf in vm_block_eval [inlined] () at
 /Users/watson/src/MacRuby/dispatcher.cpp:1162
 #70 0x0000000100132baf in rb_vm_block_eval (b=0x2002775c0, argc=0,
 argv=0x0) at dispatcher.cpp:1169
 #71 0x00000001000413b2 in proc_call (procval=8592489312, sel=0x0, argc=0,
 argv=0x0) at proc.c:434
 #72 0x000000010004141c in rb_proc_call2 (self=8592489312, argc=0,
 argv=0x0) at proc.c:452
 #73 0x0000000100037c8b in rb_end_proc_call_try (proc=8592489312) at
 eval_jump.c:46
 #74 0x0000000100146db4 in rb_rescue2 (b_proc=0x100037c6c
 <rb_end_proc_call_try>, data1=8592489312, r_proc=0x100037c8d
 <rb_end_proc_call_catch>, data2=0) at vm.cpp:3363
 #75 0x0000000100038442 in rb_rescue (b_proc=0x100037c6c
 <rb_end_proc_call_try>, data1=8592489312, r_proc=0x100037c8d
 <rb_end_proc_call_catch>, data2=0) at eval.c:483
 #76 0x0000000100037d0b in rb_exec_end_proc () at eval_jump.c:64
 #77 0x0000000100037e0c in ruby_finalize_0 () at eval.c:83
 #78 0x0000000100037e27 in ruby_finalize () at eval.c:97
 #79 0x000000010008ce51 in rb_exit (status=0) at process.c:2473
 #80 0x0000000100000c1c in main (argc=3, argv=0x10161de70,
 envp=0x7fff5fbff1f8) at main.cpp:40
 (gdb) quit
 The program is running.  Exit anyway? (y or n) y
 }}}

-- 
Ticket URL: <http://www.macruby.org/trac/ticket/794#comment:3>
MacRuby <http://macruby.org/>



More information about the MacRuby-devel mailing list