Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 22 Nov 2000 16:04:02 -0800 (PST)
From:      John Baldwin <jhb@FreeBSD.org>
To:        Daniel Eischen <eischen@vigrid.com>
Cc:        bright@wintelcom.net, jlemon@flugsvamp.com, arch@FreeBSD.org, Terry Lambert <tlambert@primenet.com>
Subject:   Re: Thread-specific data and KSEs
Message-ID:  <XFMail.001122160402.jhb@FreeBSD.org>
In-Reply-To: <Pine.SUN.3.91.1001122182015.7920C-100000@pcnet1.pcnet.com>

next in thread | previous in thread | raw e-mail | index | archive | help

On 22-Nov-00 Daniel Eischen wrote:
> On Wed, 22 Nov 2000, John Baldwin wrote:
>> 
>> On 22-Nov-00 Terry Lambert wrote:
>> > The %gs register already has to be saved for WINE processes,
>> > so it's taken (at least when USER_LDT is defined).  So there
>> > would not be an additional context switch for it.
>> 
>> Ok.  Since %fs is only used in the kernel and is saved/restored it might be
>> a
>> good thing to use instead.
> 
> I didn't think %fs was saved, but if it is, that's fine
> with me too.

Hmm, if it isn't it is trivial to save it.

>> > I think that if you guys go forward with this, you should do an
>> > indirect through whatever you end up using.  I realize this will
>> > cost an additional 6 clock cycles, but it will let you expand
>> > the list of things indefinitely, going forward, instead of having
>> > to keep a register dedicated for backward compatability, and then
>> > somehow "grow a new one" when you need to do something similar to
>> > this again, in the future.
>> 
>> It will be an indirect if I have any say in it. :)  Currently we use %fs in
>> the
>> kernel to address a segment that contains per-CPU data.  I think that if we
>> use
>> a seg reg, then we should have it address a segment that contains per-KSE
>> data.
> 
> Didn't Terry want an additional level of indirection?  If we
> have %fs address a segment containing per-KSE data, then I'd
> like to place pointers to both the KSE struct and the thread struct
> (2 slots) in this segment (this would remove 1 level of indirection
> to "current thread").

%fs is the indirection. :)

-- 

John Baldwin <jhb@FreeBSD.org> -- http://www.FreeBSD.org/~jhb/
PGP Key: http://www.baldwin.cx/~john/pgpkey.asc
"Power Users Use the Power to Serve!"  -  http://www.FreeBSD.org/


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-arch" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?XFMail.001122160402.jhb>