aboutsummaryrefslogtreecommitdiff
path: root/malloc/alloc_buffer_alloc_array.c
diff options
context:
space:
mode:
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>2021-06-30 10:24:09 -0300
committerCarlos O'Donell <carlos@redhat.com>2022-03-29 17:02:03 -0400
commit09c5dcf73b40e69a3dae97b6f98007797ad263eb (patch)
tree22e0eb8ecc38c10e595ee17636cd053388b89745 /malloc/alloc_buffer_alloc_array.c
parent696f66660ba05a4e15db25c14d664f4fd5eb6a3b (diff)
downloadglibc-09c5dcf73b40e69a3dae97b6f98007797ad263eb.tar.xz
glibc-09c5dcf73b40e69a3dae97b6f98007797ad263eb.zip
elf: Avoid unnecessary slowdown from profiling with audit (BZ#15533)
The rtld-audit interfaces introduces a slowdown due to enabling profiling instrumentation (as if LD_AUDIT implied LD_PROFILE). However, instrumenting is only necessary if one of audit libraries provides PLT callbacks (la_pltenter or la_pltexit symbols). Otherwise, the slowdown can be avoided. The following patch adjusts the logic that enables profiling to iterate over all audit modules and check if any of those provides a PLT hook. To keep la_symbind to work even without PLT callbacks, _dl_fixup now calls the audit callback if the modules implements it. Co-authored-by: Alexander Monakov <amonakov@ispras.ru> Checked on x86_64-linux-gnu, i686-linux-gnu, and aarch64-linux-gnu. Reviewed-by: Florian Weimer <fweimer@redhat.com> (cherry picked from commit 063f9ba220f434c7f30dd65c4cff17c0c458a7cf) Resolved conflicts: NEWS elf/Makefile
Diffstat (limited to 'malloc/alloc_buffer_alloc_array.c')
0 files changed, 0 insertions, 0 deletions