From owner-freebsd-arch Tue Nov 21 17:13:31 2000 Delivered-To: freebsd-arch@freebsd.org Received: from pcnet1.pcnet.com (pcnet1.pcnet.com [204.213.232.3]) by hub.freebsd.org (Postfix) with ESMTP id 9419D37B479; Tue, 21 Nov 2000 17:13:28 -0800 (PST) Received: (from eischen@localhost) by pcnet1.pcnet.com (8.8.7/PCNet) id UAA11784; Tue, 21 Nov 2000 20:13:07 -0500 (EST) Date: Tue, 21 Nov 2000 20:13:07 -0500 (EST) From: Daniel Eischen To: John Baldwin Cc: arch@FreeBSD.org, Jonathan Lemon Subject: Re: Thread-specific data and KSEs In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-freebsd-arch@FreeBSD.ORG Precedence: bulk X-Loop: FreeBSD.ORG On Tue, 21 Nov 2000, John Baldwin wrote: > > On 22-Nov-00 Daniel Eischen wrote: > > On Tue, 21 Nov 2000, Jonathan Lemon wrote: > >> On Tue, Nov 21, 2000 at 06:51:59PM -0500, Daniel Eischen wrote: > >> > I'm going to start working on the user-side of the new threads > >> > library. I need to be able to quickly get at the current KSE > >> > (or perhaps KSEG). Can we define a register on each architecture > >> > that should not be used by FreeBSD ABI compliant applications? > >> > The register doesn't have to be 32 bits or larger, just large > >> > enough to hold the maximum number of KSEs (or KSEGs). > >> > >> Um. On a i386 I'm not sure this will be practical, there aren't > >> a whole lot of architecturally visible registers for use by the > >> application. > > > > Why can't we use a segment register? > > %cs = code segment and is taken > %ds = data segment and is taken > %es = not sure, but bet it isn't safe > %ss = stack, taken > %fs = per-CPU data Isn't this kernel-only? > %gs ? as I mentioned in my other message, this one might be useful for > addressing a structure of thread-local variables much like %fs is used for > per-CPU data. It also has value in that supposedly x86-64 (aka k64) has both > %fs and %gs, but no other seg regs. All I need is one. -- "Some may prefer open source, but me, I prefer open bar." -- Spencer F. Katt To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-arch" in the body of the message