From owner-freebsd-threads@FreeBSD.ORG Tue Jun 14 02:48:05 2005 Return-Path: X-Original-To: freebsd-threads@FreeBSD.org Delivered-To: freebsd-threads@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 2125116A41C for ; Tue, 14 Jun 2005 02:48:05 +0000 (GMT) (envelope-from mi@aldan.algebra.com) Received: from mail28.sea5.speakeasy.net (mail28.sea5.speakeasy.net [69.17.117.30]) by mx1.FreeBSD.org (Postfix) with ESMTP id BB48C43D48 for ; Tue, 14 Jun 2005 02:48:04 +0000 (GMT) (envelope-from mi@aldan.algebra.com) Received: (qmail 27446 invoked from network); 14 Jun 2005 02:48:04 -0000 Received: from aldan.algebra.com ([216.254.65.224]) (envelope-sender ) by mail28.sea5.speakeasy.net (qmail-ldap-1.03) with AES256-SHA encrypted SMTP for ; 14 Jun 2005 02:48:03 -0000 Received: from vaio.virtual-estates.net ([199.1.76.10]) by aldan.algebra.com (8.13.1/8.13.1) with ESMTP id j5E2lxiM024857 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Mon, 13 Jun 2005 22:48:00 -0400 (EDT) (envelope-from mi@aldan.algebra.com) Received: from vaio.virtual-estates.net (localhost [127.0.0.1]) by vaio.virtual-estates.net (8.13.3/8.13.3) with ESMTP id j5E2g311000873; Mon, 13 Jun 2005 22:42:03 -0400 (EDT) (envelope-from mi@aldan.algebra.com) Received: from localhost (localhost [[UNIX: localhost]]) by vaio.virtual-estates.net (8.13.3/8.13.3/Submit) id j5E2g2tM000872; Mon, 13 Jun 2005 22:42:02 -0400 (EDT) (envelope-from mi@aldan.algebra.com) X-Authentication-Warning: vaio.virtual-estates.net: mi set sender to mi@aldan.algebra.com using -f From: "Mikhail T." To: George Rhoten , freebsd-threads@FreeBSD.org Date: Mon, 13 Jun 2005 22:42:01 -0400 User-Agent: KMail/1.8 References: <200506132133.j5DLXv6f045514@corbulon.video-collage.com> In-Reply-To: <200506132133.j5DLXv6f045514@corbulon.video-collage.com> X-Face: %UW#n0|w>ydeGt/b@1-.UFP=K^~-:0f#O:D7whJ5G_<5143Bb3kOIs9XpX+"V+~$adGP:J|SLieM31VIhqXeLBli"<=?utf-8?q?kcG=5EEOVihy+z3/UR=7B6SCQ=0A?= MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Content-Disposition: inline Message-Id: <200506132242.02124@Misha> Cc: Subject: Re: IntlTest hangs on FreeBSD (TestThreadedIntl) (PR#1141) X-BeenThere: freebsd-threads@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Threading on FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 14 Jun 2005 02:48:05 -0000 = This is reproducable on the sourceforge.net NetBSD machine by executing the following: = = My initial guess is that it seems to be an OS thread scheduler bug. = The main process spins in a loop without sleeping and frequently locks = the global mutex while waiting for the other threads to finish. None = of the other threads get enough time because they are all waiting for = the global mutex lock from the main process thread when its their = turn. The main process thread is hoging the global mutex while it's in = its loop. It's not a deadlock, it's just a type of thread scheduling = that doesn't happen on other operating systems. Whether it is a bug or a legal oddity, our threads (CC-ed) people would love to hear about it... = Adding a sleep() or a yield statement in the main thread of the test = allows the test to finish. The fix will be available in ICU 3.4. -mi