From: KOSAKI Motohiro Date: 2012-04-25T01:39:00+09:00 Subject: [ruby-core:44598] Re: [ruby-trunk - Bug #6341] SIGSEGV: Thread.new { fork { GC.start } }.join On Tue, Apr 24, 2012 at 12:13 PM, NARUSE, Yui wrote: > (2012/04/24 19:44), KOSAKI Motohiro wrote: >>> kosaki (Motohiro KOSAKI) wrote: >>>> On Mon, Apr 23, 2012 at 11:17 PM, Yusuke Endoh wrote: >>>> �> I suggest to make Kernel#fork raise a NotImplementedError on NetBSD >>>> �> 5.0+. >>>> �> Fortunately, the tests already have a guard for NotImplementedError >>>> �> because there is a supported platform that does not support >>>> �> Kernel#fork (you know, windows). >>>> �> Even on the platform, SEGV is not allowed, in principle. >>>> >>>> �No. it works if user don't use threads. So, one option is, fork after >>>> �thread.new raise an exception on all platform. >>> >>> It is wrong. >>> Ruby 1.9 makes timer thread even if there is only the main thread. >> >> You don't understand the issue. On other OSs, async-signal-unsafe function usage >> makes unlocked libc lock issue. therefore our current fork code works. >> It kill timer thread >> at once. > > You don't know the original issue, what you are saying seems recent one. > see also http://bugs.ruby-lang.org/issues/show/270 I don't? Why? Even though I joined bug#270 discussion.