[Bug time/24959] New: librt IFUNC resolvers for clock_gettime and clock_* functions other can lead to crashes

fweimer at redhat dot com sourceware-bugzilla@sourceware.org
Tue Sep 3 07:28:00 GMT 2019


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

            Bug ID: 24959
           Summary: librt IFUNC resolvers for clock_gettime and clock_*
                    functions other  can lead to crashes
           Product: glibc
           Version: 2.30
            Status: NEW
          Severity: normal
          Priority: P2
         Component: time
          Assignee: unassigned at sourceware dot org
          Reporter: fweimer at redhat dot com
        Depends on: 24741
  Target Milestone: ---

Similar to system/longjmp/vfork (bug 20188, bug 19861, and others), programs
can fail to load due to the relocation dependency of the IFUNC resolvers for
clock_gettime and the other clock_* functions in librt.

This is particularly visible if a program uses clock_gettime from libc (from an
object which does not link against librt), and also has dynamic objects which
are linked against librt.  In this case, the librt definition of clock_gettime
interposes the libc definition, and its IFUNC resolver may run before librt is
relocated (because not all clock_gettime users have a DT_NEEDED dependency on
librt).


Referenced Bugs:

https://sourceware.org/bugzilla/show_bug.cgi?id=24741
[Bug 24741] ld.so should not require that a versioned symbol is always
implemented in the same library
-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the Glibc-bugs mailing list