On Wed, Feb 24, 2016 at 6:56 AM, Jared Cantwell <[email protected]> wrote: > Thank you for the patch. > > Since we are ok with simply not getting the stack trace in some cases, we > decided to implement our own trampoline version of dl_iterate_phdr that > simply records in a thread-local variable that it is being invoked and then > forwards onto the real implementation. Then, in the signal handler, we > check the thread-local variable and don't call into libunwind if > dl_iterate_phdr is currently being called on the thread we're running on.
Just FYI, The thread-local variables may also call malloc [1], and Google's patches to make them async-safe [2] have been rejected by GLIBC [3]. [1] https://sourceware.org/bugzilla/show_bug.cgi?id=16133 [2] https://sourceware.org/bugzilla/show_bug.cgi?id=16133#c1 [3] https://sourceware.org/bugzilla/show_bug.cgi?id=16133#c3 -- Paul Pluzhnikov _______________________________________________ Libunwind-devel mailing list [email protected] https://lists.nongnu.org/mailman/listinfo/libunwind-devel
