Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 18 Jul 2003 15:15:58 -0700 (PDT)
From:      Julian Elischer <julian@elischer.org>
To:        Marcel Moolenaar <marcel@xcllnt.net>
Cc:        threads@freebsd.org
Subject:   Re: Rearranging kse mailbox
Message-ID:  <Pine.BSF.4.21.0307181510360.14696-100000@InterJet.elischer.org>
In-Reply-To: <Pine.BSF.4.21.0307181458370.14696-100000@InterJet.elischer.org>

next in thread | previous in thread | raw e-mail | index | archive | help
umm let me clean that up....

On Fri, 18 Jul 2003, Julian Elischer wrote:
[...]
> 
> The ia64 requires that the thread pointer points to 
> some location that is 16 bytes long, the first 8 bytes
> of which is a pointer to the TLS Dynamic thread vector, and the 2nd 8
> bytes is application specific, but in practice, must be a pointer to
> the Thread's or KSE's mailbox (I guess KSE to be similar to the others.)

Static TLS data follows immediatly following the 16th byte.

> 
> Ia32 requires just that the thread control info pointed to by %gs
> SOMEWHERE contains a pointer to the dtv (where SOMEWHERE is a known
> offset). (In our case the offset would be 0). 

Static TLS space preceeds the location pointed to by the tp (the %gs
segment on x86).

> 
> This means that for the UTS to find the active thread under ia64
> takes an extra level of indirection. (Note that neither of these
> affect upcalls as the UTS upcall target function has the mailbox as an
> argument and can access it independently of %gs or the tp).
> 
> Am I right that "variant 2" (as seen in the ia32 case)
> applies to allarchitectures other than ia64?
> 
> julian



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0307181510360.14696-100000>