Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 20 Sep 2001 10:38:08 -0700 (PDT)
From:      John Baldwin <jhb@FreeBSD.org>
To:        Julian Elischer <julian@elischer.org>
Cc:        hackers@FreeBSD.org, Peter Wemm <peter@wemm.org>
Subject:   Re: JKH Project: x86: pcb_ext
Message-ID:  <XFMail.010920103808.jhb@FreeBSD.org>
In-Reply-To: <3BA959E7.43CD9CD6@elischer.org>

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

On 20-Sep-01 Julian Elischer wrote:
> Peter Wemm wrote:
>> 
>> John Baldwin wrote:
>> >
>> > On 19-Sep-01 Peter Wemm wrote:
>> > > The more I think about it, the right place may be the kse, since that
>> > > outlives
>> > > the threads and is per-cpu unlike the process.
>> > >
>> > > Or, we just say "no pcb extensions for kse processes".
>> >
>> > Each thread would need its own TSS, and to preserve existing semantics, we
>> > would have to change the TSS of all threads for each TSS related syscall. 
>> > In
>> > light of that, I vote in favor of "no TSS's for kse processes" since TSS's
>> > ar
>>     e
>> > used for very few things anyways.  LDT's are another matter and can be
>> > moved
>> > w/o a problem.
>> 
>> The main two things we seem to use the per-process TSS stuff for are:
>>   Fine grained IO port permission bitmap
>>   VM86 mode
>> I think we can well do without the complexity of mixing KSE with those two.
> 
> <DEVIL'S ADVOCATE>
> I could IMAGINE a vm86 version that ran the control/exception 
> thread on another processor as a different thread. (though who would write
> it?)
> I could also imagine a muli-threaded program doing IO to a device as a
> userland
> driver.
> </DEVIL's ADVOCATE>
> but of course hey'd need to be writen explicitly for it..
>  
>> 
>> We still would need to sync LDT reloads..
> 
> that's more of a worry for me.
> Do we still have separate a LDT for threads?

What you will have to do for the LDT reload (an LDT is per-process, not
per-thread) is perform a context switch (or possibly just a LDT reload) on all
processors running threads from thsi process.  We already do this in a way when
we change an LDT that is shared, IIRC.

-- 

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-hackers" in the body of the message




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