From owner-freebsd-threads@FreeBSD.ORG Fri Jul 18 15:16:10 2003 Return-Path: Delivered-To: freebsd-threads@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D1E5F37B404; Fri, 18 Jul 2003 15:16:10 -0700 (PDT) Received: from rwcrmhc13.comcast.net (rwcrmhc13.comcast.net [204.127.198.39]) by mx1.FreeBSD.org (Postfix) with ESMTP id 5CF7443FE3; Fri, 18 Jul 2003 15:16:10 -0700 (PDT) (envelope-from julian@elischer.org) Received: from interjet.elischer.org ([12.233.125.100]) by attbi.com (rwcrmhc13) with ESMTP id <2003071822160901500bk96re>; Fri, 18 Jul 2003 22:16:09 +0000 Received: from localhost (localhost.elischer.org [127.0.0.1]) by InterJet.elischer.org (8.9.1a/8.9.1) with ESMTP id PAA15849; Fri, 18 Jul 2003 15:16:00 -0700 (PDT) Date: Fri, 18 Jul 2003 15:15:58 -0700 (PDT) From: Julian Elischer To: Marcel Moolenaar In-Reply-To: Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII cc: deischen@freebsd.org cc: threads@freebsd.org Subject: Re: Rearranging kse mailbox X-BeenThere: freebsd-threads@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Threading on FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 18 Jul 2003 22:16:11 -0000 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