Nicolas Pitre | 1 Feb 2005 15:55

Re: [RFC] NPTL and TLS support for ARM

On Tue, 1 Feb 2005, Daniel Jacobowitz wrote:

> On Tue, Feb 01, 2005 at 09:29:08AM -0500, Nicolas Pitre wrote:
> > On Tue, 1 Feb 2005, Daniel Jacobowitz wrote:
> > 
> > > Nico's TLS approach seems generally OK to me.  I'm really unenthusiastic
> > > about the idea that UP and SMP kernels will require different versions of
> > > glibc to work, though I think we can avoid it.
> > 
> > Two different versions are not necessary.  It boilds down to whether you 
> > compiled your lib with ARMv6 instruction set or not.  If you compiled 
> > for ARMv6, then the result could execute only on an ARMv6 or higher CPU 
> > which will have the TLS register available.  For pre ARMV6 compilation 
> > the magic memory address is used instead, and only SMP will need 
> > emulation.  And since SMP is available on ARMv6 or higher you'll 
> > probably want to optimize for ARMv6 anyway for best performances.  
> > Therefore on non SMP ARMv6 both methods should be available without any 
> > emulation.
> 
> George's latest findings suggest that not all ARMv6 cores will supply
> the register.  I'm not sure if that's true, or just a documentation and
> simulator bug.

All non SMP systems will support the memory access anyway, even on 
ARMv6.  So until SMP hit the street for the mass it's not a big issue, 
and even then the memory access will be emulated on SMP.  

> Also, the register will require kernel support -
> userspace can't write it.

User space can't write to the special memory location either.  The 
syscall is required in both cases.

Nicolas

-------------------------------------------------------------------
Subscription options: http://lists.arm.linux.org.uk/mailman/listinfo/linux-arm-kernel
FAQ:       http://www.arm.linux.org.uk/armlinux/mlfaq.php
Etiquette: http://www.arm.linux.org.uk/armlinux/mletiquette.php


Gmane