Implementing TLS: step 1

Marcel Moolenaar marcel at xcllnt.net
Thu Jun 19 21:33:42 PDT 2003


On Thu, Jun 19, 2003 at 11:57:04PM -0400, Daniel Eischen wrote:
> 
> I'm not too sure about the kernel code.  If you have KSEs
> working for libthr, then I assume there is very little extra
> kernel code needed.  You do need to have get_mcontext() and
> set_mcontext() implemented in machdep.c, though.  It looks
> like you do (although nothing is done with clear_ret in
> get_mcontext()).

Yes, {g|s}et_mcontext() are implemented, as is makecontext(3).

We cannot do anything with clear_ret, because it's based on
assumptions that don't hold in ia64.

BTW: there's no race that can't be plugged if TP doesn't point
to the mailbox. All we need is an atomic compare-exchange and
a retry loop...

-- 
 Marcel Moolenaar	  USPA: A-39004		 marcel at xcllnt.net


More information about the freebsd-threads mailing list