From: "naruse (Yui NARUSE)" Date: 2012-04-26T11:18:40+09:00 Subject: [ruby-core:44634] [ruby-trunk - Bug #6341][Third Party's Issue] SIGSEGV: Thread.new { fork { GC.start } }.join Issue #6341 has been updated by naruse (Yui NARUSE). Status changed from Feedback to Third Party's Issue rudolf (r stu3) wrote: > naruse (Yui NARUSE) wrote: > > Following patch to NetBSD fixes this issue. > > thanks @_enami > [...] > > I've tested the patch and can no more reproduce the problem. Thanks! enami committed it to NetBSD current as rev 1.134. http://cvsweb.netbsd.org/bsdweb.cgi/src/lib/libpthread/pthread.c?rev=1.134&content-type=text/x-cvsweb-markup&only_with_tag=MAIN Thank you for reporting! ---------------------------------------- Bug #6341: SIGSEGV: Thread.new { fork { GC.start } }.join https://bugs.ruby-lang.org/issues/6341#change-26205 Author: rudolf (r stu3) Status: Third Party's Issue Priority: Low Assignee: Category: core Target version: ruby -v: ruby 1.9.3p196 (2012-04-21) [x86_64-netbsd6.0.] When running ruby (ruby-lang.org) test suite, I am able to provoke a segfault using a test from bootstraptest/test_thread.rb: begin Thread.new { fork { GC.start } }.join pid, status = Process.wait2 $result = status.success? ? :ok : :ng rescue NotImplementedError $result = :ok end It is easy to provoke the problem with this command launched in shell (1-20 times until the problem shows): $ ruby -e "Thread.new { fork { GC.start } }.join" Environment: - NetBSD-6.0_BETA amd64, from 2012/04/21 - ruby_1_9_3 branch, revision 35416 (I've also tried trunk and it has similar problem) - 8 GB RAM, a lot of free memory, dual-core CPU - gcc version 4.5.3 (NetBSD nb2 20110806) Backtrace and "bt full" is available in the attached gdb_session.txt file. -- http://bugs.ruby-lang.org/