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>