[lttng-dev] [RFC PATCH lttng-ust] Implement register_done waiting via LD_AUDIT

Alexander Monakov amonakov at ispras.ru
Tue Jul 1 11:19:57 EDT 2014


Hello,

I'm not aware of the context of this patch, but please note that the amount of
overhead from non-empty LD_AUDIT is currently extremely high in all released
Glibc versions.  The forced high overhead is, as I understand, misaligned with
LTTng's aim to provide low-overhead tracing.

Non-empty LD_AUDIT behaves as if one of auditing libraries provided PLT hooks.
This causes the dynamic linker to install register save-restore helpers for
each PLT call, even if they are not needed (if no PLT hooks were in fact
provided).

Here's the Glibc bug that shows a ~19x slowdown on a microbenchmark that
repeatedly calls sqrt() from libm.so.  The proposed patch was not accepted,
with the review suggesting a different approach.

https://sourceware.org/bugzilla/show_bug.cgi?id=15533

Could you explain the problem your patch aims to solve?  Sorry if it was
already explained elsewhere; please point me to the discussion in that case.

Alexander



More information about the lttng-dev mailing list