From owner-freebsd-ports-bugs@FreeBSD.ORG Mon Mar 3 11:50:01 2014 Return-Path: Delivered-To: freebsd-ports-bugs@smarthost.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [8.8.178.115]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E181E69D for ; Mon, 3 Mar 2014 11:50:00 +0000 (UTC) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id BA03EE61 for ; Mon, 3 Mar 2014 11:50:00 +0000 (UTC) Received: from freefall.freebsd.org (localhost [127.0.0.1]) by freefall.freebsd.org (8.14.8/8.14.8) with ESMTP id s23Bo0nZ023864 for ; Mon, 3 Mar 2014 11:50:00 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.8/8.14.8/Submit) id s23Bo02n023863; Mon, 3 Mar 2014 11:50:00 GMT (envelope-from gnats) Resent-Date: Mon, 3 Mar 2014 11:50:00 GMT Resent-Message-Id: <201403031150.s23Bo02n023863@freefall.freebsd.org> Resent-From: FreeBSD-gnats-submit@FreeBSD.org (GNATS Filer) Resent-To: freebsd-ports-bugs@FreeBSD.org Resent-Reply-To: FreeBSD-gnats-submit@FreeBSD.org, Andrew Childs Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTPS id E7C295CB for ; Mon, 3 Mar 2014 11:43:39 +0000 (UTC) Received: from smtp3.clear.net.nz (smtp3.clear.net.nz [203.97.33.64]) by mx1.freebsd.org (Postfix) with ESMTP id AB0EDE04 for ; Mon, 3 Mar 2014 11:43:39 +0000 (UTC) Received: from mxin2-orange.clear.net.nz (lb2-srcnat.clear.net.nz [203.97.32.237]) by smtp3.clear.net.nz (CLEAR Net Mail) with ESMTP id <0N1U00H89Z63E920@smtp3.clear.net.nz> for FreeBSD-gnats-submit@freebsd.org; Tue, 04 Mar 2014 00:42:05 +1300 (NZDT) Received: from 202-78-141-194.cable.telstraclear.net (HELO mail.cons.org.nz) ([202.78.141.194]) by smtpin2.clear.net.nz with ESMTP; Tue, 04 Mar 2014 00:42:05 +1300 Received: from northind.cons.org.nz (northind.cons.org.nz [10.88.0.25]) by mail.cons.org.nz (Postfix) with ESMTP id 6C6E827F190 for ; Tue, 04 Mar 2014 00:42:04 +1300 (NZDT) Received: by northind.cons.org.nz (Postfix, from userid 1001) id 1470074; Tue, 04 Mar 2014 00:42:04 +1300 (NZDT) Message-Id: <20140303114204.1470074@northind.cons.org.nz> Date: Tue, 04 Mar 2014 00:42:04 +1300 (NZDT) From: Andrew Childs To: FreeBSD-gnats-submit@freebsd.org X-Send-Pr-Version: 3.114 Subject: ports/187220: lang/ruby20, lang/ruby21: deadlock with fork, new thread and raise in at_exit X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.17 Precedence: list Reply-To: Andrew Childs List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 03 Mar 2014 11:50:01 -0000 >Number: 187220 >Category: ports >Synopsis: lang/ruby20, lang/ruby21: deadlock with fork, new thread and raise in at_exit >Confidential: no >Severity: non-critical >Priority: low >Responsible: freebsd-ports-bugs >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Mon Mar 03 11:50:00 UTC 2014 >Closed-Date: >Last-Modified: >Originator: Andrew Childs >Release: FreeBSD 10.0-RELEASE amd64 >Organization: >Environment: System: FreeBSD northind.cons.org.nz 10.0-RELEASE FreeBSD 10.0-RELEASE #0 r260789: Thu Jan 16 22:34:59 UTC 2014 root@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC amd64 >Description: The following test case sometimes causes a deadlock in the parent process in lang/ruby20 and lang/ruby21. Ruby on other platforms and lang/ruby19 seem to be unaffected. This test case was inspired by sysutils/puppet, which executes similar code displays similar symptoms. at_exit { raise } if pid = fork Thread.new {} exit(0) end Tested, OK: ruby19 -v: ruby 1.9.3p484 (2013-11-22 revision 43786) [amd64-freebsd10] Tested, deadlocks: ruby20 -v: ruby 2.0.0p353 (2013-11-22 revision 43784) [amd64-freebsd10] ruby21 -v: ruby 2.1.1p76 (2014-02-24 revision 45161) [amd64-freebsd10] >How-To-Repeat: In order to see a deadlock it may have to be run multiple times, for example: for i in `jot 100`; do ruby test-case.rb; done >Fix: >Release-Note: >Audit-Trail: >Unformatted: