Openwall GNU/*/Linux - a small security-enhanced Linux distro for servers
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Thu, 4 Oct 2012 23:04:14 -0400
From: Rich Felker <>
Subject: Re: TLS (thread-local storage) support

On Thu, Oct 04, 2012 at 05:13:32PM -0400, Rich Felker wrote:
> Hi,
> I've committed the initial version of thread-local storage
> (__thread/_Thread_local keyword). So far, it only works in
> static-linked applications,

Scratch that. It's now supported everywhere except dynamically loaded
(dlopen'd) shared libraries. And I'm working on adding support for
them too. So far only i386 is tested, but at least x86_64 is also very
likely to work (it's basically the same).

> and might or might not be working properly
> on arm, mips, and microblaze.

I believe it's working on ARM, but it's completely untested.
Microblaze and MIPS do not yet have the necessary relocation
processing, but TLS in the main executable (static or dynamic linked)
_might_ work.

> The latter is a matter of whether these
> archs need "TLS variant I" instead of the much cleaner/saner "variant
> II" used by i386 and x86_64;

So far, I can't see anywhere the variant is relevant to the ABI; it
seems we can just use "variant II" unconditionally. Let's hope I'm
right because I don't feel like dealing with more ugly, gratuitous
special-case code.


Powered by blists - more mailing lists

Your e-mail address:

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.