|
Message-ID: <20121005172729.GN254@brightrain.aerifal.cx> Date: Fri, 5 Oct 2012 13:27:29 -0400 From: Rich Felker <dalias@...ifal.cx> To: musl@...ts.openwall.com Subject: Re: TLS (thread-local storage) support On Thu, Oct 04, 2012 at 11:04:14PM -0400, Rich Felker wrote: > 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 And they're working now too. I've also made some general fixes and improvements to the dynamic linker -- minor corrections in how library files are located, and support for recursive calls to dlopen (happens when a library has constructors and one of those constructors calls dlopen). This same change was also necessary to avoid blocking pthread_create calls for the entire duration of constructor execution. Some further dynamic linker development directions: - Unifying the relocation code in arch/$(ARCH)/reloc.h to minimize duplication. - Adding dlsym() support for TLS vars (obtaining current thread's copy). - Cleanup and reduction of code duplication - phdr parsing and symbol lookup logic is duplicated in several places. And of course testing TLS on other archs and fixing anything that's broken... Rich
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.