This is the mail archive of the
glibc-bugs@sourceware.org
mailing list for the glibc project.
[Bug dynamic-link/14831] [Regression] Segfault in _dl_profile_fixup with IRELATIVE and LD_AUDIT
- From: "amonakov at gmail dot com" <sourceware-bugzilla at sourceware dot org>
- To: glibc-bugs at sources dot redhat dot com
- Date: Tue, 13 Nov 2012 19:10:13 +0000
- Subject: [Bug dynamic-link/14831] [Regression] Segfault in _dl_profile_fixup with IRELATIVE and LD_AUDIT
- Auto-submitted: auto-generated
- References: <bug-14831-131@http.sourceware.org/bugzilla/>
http://sourceware.org/bugzilla/show_bug.cgi?id=14831
Alexander Monakov <amonakov at gmail dot com> changed:
What |Removed |Added
----------------------------------------------------------------------------
Attachment #6728|0 |1
is obsolete| |
--- Comment #2 from Alexander Monakov <amonakov at gmail dot com> 2012-11-13 19:10:13 UTC ---
Created attachment 6732
--> http://sourceware.org/bugzilla/attachment.cgi?id=6732
standalone testcase
Attached a standalone testcase that demonstrates the issue.
This bug is a regression that prevents using LD_AUDIT with any executables that
link against libm.so on some of the recent Linux distributions (and most of
g++-compiled applications link with libm).
I'm not familiar with the rtld guts at all, but here's my understanding of what
happens:
1. elf_machine_lazy_rel calls the ifunc resolver
2. the resolver calls another function in the dso
3. the plt entry(?) has been instrumented for dso profiling, and calls
_dl_profile_fixup.
4. _dl_profile_fixup accesses l->l_reloc_result, which is NULL and will be
allocated later in _dl_relocate_object
It seems to me that instrumenting for profiling is not necessary if the audit
library does not export la_plt* routines. Thus, I think there are two separate
issues here.
--
Configure bugmail: http://sourceware.org/bugzilla/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are on the CC list for the bug.