>>>>> "Y" == Yukihiro Matsumoto <matz / ruby-lang.org> writes: Y> Currently I suspect this is caused by LinuxThread bug. I tried hard I'm probably wrong, but I don't think it's related to pthread. The example given can crash with svg and Tk/Tcl is not compiled with pthread svg% ldd /usr/lib/libtk.so libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x400c3000) libdl.so.2 => /lib/libdl.so.2 (0x401a2000) libm.so.6 => /lib/i686/libm.so.6 (0x401a5000) libc.so.6 => /lib/i686/libc.so.6 (0x42000000) libtcl.so.0 => /usr/lib/libtcl.so.0 (0x401c7000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000) svg% svg% ldd /usr/lib/libtcl.so libdl.so.2 => /lib/libdl.so.2 (0x40095000) libm.so.6 => /lib/i686/libm.so.6 (0x40099000) libc.so.6 => /lib/i686/libc.so.6 (0x42000000) /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x80000000) svg% Y> to solve Nathaniel Talbott's problem, which must be caused by the Y> same reason, but I couldn't make complete success. Well, the latest patch at least make it work on Solaris-32 (previously it blocked very quickly) nasun% ps ax | grep ruby 17326 ? O 1501:43 ruby s.rb 22284 ? O 246:26 ruby c.rb 22287 ? S 126:48 ruby c.rb 22327 pts/20 S 0:00 grep ruby nasun% nasun% pstack 17326 17326: ruby s.rb ----------------- lwp# 1 / thread# 1 -------------------- ff29f6e0 __setcontext (ffbd70f0, ffbd7948, 4, 28dda0, ffbd7b30, ffbd7b60) + 10 0001f0e8 rb_eval (292918, cc800, ffffffff, 3, ca000, d4780) + 108c 000247e4 rb_call0 (1b5c28, 292918, 3f69, ffbd7914, 0, ffbd7c6c) + 474 [...] 0001fa50 rb_eval (106358, cc800, be064, 0, ca000, ca000) + 19f4 0001bae8 ruby_exec (0, ffbefa84, 0, be034, be064, 0) + a0 0001bb40 ruby_run (2, ffbefa84, 0, 0, 0, 0) + 20 00019b48 main (2, ffbefa84, ffbefa90, ccbfc, 0, 0) + 18 000199c8 _start (0, 0, 0, 0, 0, 0) + 5c ----------------- lwp# 2 / thread# 2 -------------------- ff29edc0 signotifywait () ff18e950 _dynamiclwps (ff1ac000, 0, 0, 0, 0, 0) + 1c ff191c2c thr_yield (0, 0, 0, 0, 0, 0) + 8c ----------------- lwp# 3 -------------------------------- ff29c964 door (0, 0, 0, 0, ff175d38, 4) ff1967c8 _sc_door_func (0, 0, 0, 0, 0, 0) + 54 ----------------- lwp# 4 / thread# 4 -------------------- ff29bde0 nanosleep (fee0bd20, fee0bd18) ff19a440 __nanosleep (0, ff0a3d38, 1, ff1b8d04, 0, 2) + 34 ff19b01c _thread_start (0, 0, 0, 0, 0, 0) + 40 -------------------------- thread# 3 -------------------- ff18d9b8 _reap_wait (ff1b0980, 1e924, 0, ff1ac000, 0, 0) + 38 ff18d710 _reaper (ff1ace00, ff1b2708, ff1b0980, ff1acdd8, 1, fe400000) + 38 ff19b01c _thread_start (0, 0, 0, 0, 0, 0) + 40 nasun% Guy Decoux