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

Reply via email to