From owner-freebsd-sparc64@FreeBSD.ORG Thu Apr 20 19:49:20 2006 Return-Path: X-Original-To: freebsd-sparc64@freebsd.org Delivered-To: freebsd-sparc64@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id BB04A16A401 for ; Thu, 20 Apr 2006 19:49:20 +0000 (UTC) (envelope-from carton@Ivy.NET) Received: from sakima.Ivy.NET (sakima.Ivy.NET [69.31.131.60]) by mx1.FreeBSD.org (Postfix) with ESMTP id 211EA43D49 for ; Thu, 20 Apr 2006 19:49:20 +0000 (GMT) (envelope-from carton@Ivy.NET) Received: from castrovalva.Ivy.NET (castrovalva.Ivy.NET [IPv6:2001:4830:2150:c0::3]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by sakima.Ivy.NET (Postfix) with ESMTP id BED1D2FF5F for ; Thu, 20 Apr 2006 15:49:18 -0400 (EDT) Received: by castrovalva.Ivy.NET (Postfix, from userid 405) id 73C8012FB03; Thu, 20 Apr 2006 15:49:18 -0400 (EDT) To: freebsd-sparc64@freebsd.org References: <20060418204240.GA69833@xor.obsecurity.org> <001801c66372$a032e770$2522630a@t22> <20060419054116.GA39394@xor.obsecurity.org> <20060420074713.Y52948@hades.admin.frm2> <20060420182331.GA26174@xor.obsecurity.org> From: Miles Nordin MIME-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: multipart/signed; boundary="pgp-sign-Multipart_Thu_Apr_20_15:49:18_2006-1"; micalg=pgp-sha1; protocol="application/pgp-signature" Content-Transfer-Encoding: 7bit Date: Thu, 20 Apr 2006 15:49:18 -0400 In-Reply-To: <20060420182331.GA26174@xor.obsecurity.org> (Kris Kennaway's message of "Thu, 20 Apr 2006 14:23:31 -0400") Message-ID: User-Agent: T-gnus/6.17.2 (based on No Gnus v0.2) SEMI/1.14.6 (Maruoka) FLIM/1.14.7 (=?ISO-8859-4?Q?Sanj=F2?=) APEL/10.6 Emacs/21.4 (alpha--netbsd) MULE/5.0 (SAKAKI) Subject: Re: pthread_mutex_timedlock on sparc64 X-BeenThere: freebsd-sparc64@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the Sparc List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 20 Apr 2006 19:49:20 -0000 --pgp-sign-Multipart_Thu_Apr_20_15:49:18_2006-1 Content-Type: text/plain; charset=US-ASCII >>>>> "kk" == Kris Kennaway writes: kk> Then we can make libthr the default on FreeBSD 6.x as well. 1. is libpthread a real library or a placeholder that you point at your choice of thread implementation? 2. How many native thread implementations are there (in the base system), working or not on all FreeBSD versions? Two? Or three? or... 3. What libraries do you link for each? On NetBSD, I type -lpthread and get Scheduler Activations. no choosing. Either it works or it doesn't. On Solaris, if I type 'man pthreads' or 'man threads' it'll tell me they have two thread implementations, and it'll tell meq how to choose which one I want. I think in Solaris 8 they had four. I don't have Solaris 8 so I could be wrong about how to choose them, but as an example for what I want to know about FreeBSD: -mt Solaris threads \ -mt -lpthread POSIX threads / MxN threads -mt -L/usr/lwp/lib Solaris threads \ -mt -L/usr/lwp/lib -lpthread POSIX threads / 1:1 threads so, if I want POSIX threads I add the -lpthread wrapper. It's not a placeholder---it's a wrapper around libthread which is always there, different from FreeBSD? If I want 1:1 threads rather than MxN threads, I searach the libraries from /usr/lwp/lib first. Definitely different from FreeBSD which uses libmap.conf instead of -L? I'm hearing that FreeBSD has 1:N threads, MxN threads, and 1:N threads. And that they're all POSIX (-lpthread style) threads. ok, understood. But in kse(2) you guys call 1:N threads ``N to 1'' threads. And you call 1:1 threads ``N to N'' threads. confusing. But I don't know how to choose which I want of 1:N, 1:1, or MxN. I also don't know which are available/working on which architectures and releases---that of course changes, but maybe there's a place to explain at least how to choose and what you're choosing, which shouldn't change as things are fixed and retired? --pgp-sign-Multipart_Thu_Apr_20_15:49:18_2006-1 Content-Type: application/pgp-signature Content-Transfer-Encoding: 7bit -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.2 (NetBSD) iQCVAwUAREflvonCBbTaW/4dAQIYUQP+IzH5sZsZJCnLYSY7AEirKaMeDva8ZHrr yeRzW7Q9t8A0CEnoPesddf0cUETwVqspf4PrgsszvQU6ZnjMRZnSH5miCG1SL54i yMmv3v7AUIzayCyuw5e1QJpJ3nE4ia1RmKr8eiWcovlxFHK735/wMLGtdjw0VL6O lg4wCQQ5fsI= =Gcn+ -----END PGP SIGNATURE----- --pgp-sign-Multipart_Thu_Apr_20_15:49:18_2006-1--