[PATCH] Async signal safe TLS accesses
Joseph S. Myers
joseph@codesourcery.com
Fri Jan 10 20:29:00 GMT 2014
On Fri, 10 Jan 2014, Paul Pluzhnikov wrote:
> On Thu, Jan 9, 2014 at 8:42 AM, Joseph S. Myers <joseph@codesourcery.com> wrote:
>
> > Maybe have the signal handler outside the loaded module call the function
> > from the loaded module, but with sem_post in the function outside the
> > module? I haven't tested whether this fixes the powerpc problem, but it
> > should avoid the identified race with the module being dlclosed while code
> > from it is executing. (There would of course then be the need to have
> > memory barriers to ensure the current pointer obtained from dlsym is
> > available from the thread calling the signal handler - and it would be
> > necessary to ensure that the test does still show up the non-signal-safety
> > if run with older glibc.)
>
> Could you please test attached proposed fix?
With the patch applied, the test now works reliably for me on the powerpc
system where it previously failed reliably.
Now I'm just waiting for the ARM pointer encryption issues to be resolved
before I can run release tests for ARM (LE hard and soft float, BE soft
float - I don't have a suitable system for testing BE hard float) and so
complete my release testing for 2.19.
--
Joseph S. Myers
joseph@codesourcery.com
More information about the Libc-alpha
mailing list