Sourceware Bugzilla – Bug 14042
_mcount@GLIBC_2.0 missing in libc
Last modified: 2012-07-28 08:36:39 UTC
This was broken by
Author: Alan Modra <email@example.com>
Date: Wed Sep 7 22:02:42 2011 -0400
Fix profiling on powerpc32 secure-plt shared libs and PIEs
Also __mcount_internal should not be GLIBC_PRIVATE, since it is not a internal interface between parts of glibc, but a public interface, even if only referenced indirectly via -lc_nonshared.
I guess the problem is that my change breaks backward compatibility. We really do not want the linker to use _mcount in libc.so.6, because that cannot work when producing -msecure-plt PIEs or shared libraries. So it would appear that _mcount needs to be in both libc_nonshared.a and libc.so.6, with the latter ideally not available for linking unless given a specific symbol version. I'll have to dig a bit to see how that can be done using the glibc build system.
Removing glibc_2.15 keyword as backport suitability can't be judged until there is a fix on master. After this is fixed on master, anyone wanting a backport should feel free to attach a tested backport patch to this bug (or a new bug, if this one is closed as fixed).
Fixed in commit 261f485936b283f4327fc1f2fc8fd1705d805c12, NEWS updated in