From owner-freebsd-threads@FreeBSD.ORG Sun Jul 5 15:20:03 2009 Return-Path: Delivered-To: freebsd-threads@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 0F36D1065678 for ; Sun, 5 Jul 2009 15:20:03 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:4f8:fff6::28]) by mx1.freebsd.org (Postfix) with ESMTP id 952088FC0C for ; Sun, 5 Jul 2009 15:20:02 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.14.3/8.14.3) with ESMTP id n65FK26v035521 for ; Sun, 5 Jul 2009 15:20:02 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.14.3/8.14.3/Submit) id n65FK2AM035520; Sun, 5 Jul 2009 15:20:02 GMT (envelope-from gnats) Date: Sun, 5 Jul 2009 15:20:02 GMT Message-Id: <200907051520.n65FK2AM035520@freefall.freebsd.org> To: freebsd-threads@FreeBSD.org From: Attilio Rao Cc: Subject: Re: threads/136345: Recursive read rwlocks in thread A cause deadlock with write lock in thread B X-BeenThere: freebsd-threads@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Attilio Rao List-Id: Threading on FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 05 Jul 2009 15:20:03 -0000 The following reply was made to PR threads/136345; it has been noted by GNATS. From: Attilio Rao To: Rink Springer Cc: FreeBSD-gnats-submit@freebsd.org, freebsd-threads@freebsd.org Subject: Re: threads/136345: Recursive read rwlocks in thread A cause deadlock with write lock in thread B Date: Sun, 5 Jul 2009 16:48:27 +0200 2009/7/5 Rink Springer : > Did some more testing; it works fine on Solaris 9 and 10. Also, the > deadlock doesn't appear on FreeBSD 6.1-STABLE (Sep 2006). Perhaps this > is a libthr issue? I think that rdlock_count in libthr is not updated properly. Can you test the following patch: http://www.freebsd.org/~attilio/libthr.diff Thanks, Attilio -- Peace can only be achieved by understanding - A. Einstein