From owner-freebsd-threads@FreeBSD.ORG Mon Feb 4 15:48:06 2008 Return-Path: Delivered-To: threads@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 43CBF16A417; Mon, 4 Feb 2008 15:48:06 +0000 (UTC) (envelope-from deischen@freebsd.org) Received: from mail.netplex.net (mail.netplex.net [204.213.176.10]) by mx1.freebsd.org (Postfix) with ESMTP id EF2DF13C4D1; Mon, 4 Feb 2008 15:48:05 +0000 (UTC) (envelope-from deischen@freebsd.org) Received: from sea.ntplx.net (sea.ntplx.net [204.213.176.11]) by mail.netplex.net (8.14.2/8.14.2/NETPLEX) with ESMTP id m14Flv9R005742; Mon, 4 Feb 2008 10:47:57 -0500 (EST) X-Virus-Scanned: by AMaViS and Clam AntiVirus (mail.netplex.net) X-Greylist: Message whitelisted by DRAC access database, not delayed by milter-greylist-4.0 (mail.netplex.net [204.213.176.10]); Mon, 04 Feb 2008 10:47:57 -0500 (EST) Date: Mon, 4 Feb 2008 10:47:57 -0500 (EST) From: Daniel Eischen X-X-Sender: eischen@sea.ntplx.net To: =?utf-8?Q?Dag-Erling_Sm=C3=B8rgrav?= In-Reply-To: <86d4rdgehd.fsf@ds4.des.no> Message-ID: References: <200802032238.m13McAbf065324@repoman.freebsd.org> <86d4rdgehd.fsf@ds4.des.no> MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="-559023410-1804928587-1202140077=:13743" Cc: cvs-src@freebsd.org, src-committers@freebsd.org, cvs-all@freebsd.org, threads@freebsd.org Subject: Re: cvs commit: src/include pthread_np.h src/lib/libthr pthread.map src/lib/libthr/thread thr_mutex.c X-BeenThere: freebsd-threads@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Daniel Eischen List-Id: Threading on FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Feb 2008 15:48:06 -0000 This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. ---559023410-1804928587-1202140077=:13743 Content-Type: TEXT/PLAIN; charset=utf-8; format=flowed Content-Transfer-Encoding: QUOTED-PRINTABLE On Mon, 4 Feb 2008, Dag-Erling Sm=C3=B8rgrav wrote: > Dag-Erling Smorgrav writes: >> Log: >> Add pthread_mutex_islocked_np(), a cheap way to verify that a mutex is >> locked. This is intended primarily to support the userland equivalent >> of the various *_ASSERT_LOCKED() macros we have in the kernel. > > I'm having second thoughts about this one. There is a significant risk > of false positives if the mutex is currently locked by another thread. > I'm wondering whether to a) change the implementation so it only returns > true if the mutex is owned by the current thread, or b) change the > interface so you can specify a specific thread, or NULL for "any". I thought you wanted to know if it was locked regardless of who locked it. If you want to know if the current thread has it locked, it should be called pthread_mutex_isowned_np(). I don't really see the utility in any other behavior, and almost question the need for _isowned. I wonder if all the _np() functions should be in the FBSDprivate namespace... --=20 DE ---559023410-1804928587-1202140077=:13743--