This is the mail archive of the glibc-bugs@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libc/1579] New: Malloc is always called by stack back strace function


In /usr/include/execinfo.h, there are

/* This function is similar to backtrace_symbols() but it writes the result
   immediately to a file and can therefore also be used in situations where
   malloc() is not usable anymore.  */
extern void backtrace_symbols_fd (void *__const *__array, int __size, int __fd)
     __THROW __nonnull ((1));

The problem is stack bcktrace functions in glibc do dlopen (libgcc_s.so.1),
which will call malloc. That is malloc will be always called no matter which
function you use. Even if you build the executable with -shared-libgcc,
dl_open_worker will call dl_map_object_deps which will call malloc.

What dl_open_worker should do when a DSO to be dlopened is already on the
DT_NEEDED list in the executable?

-- 
           Summary: Malloc is always called by stack back strace function
           Product: glibc
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: libc
        AssignedTo: drepper at redhat dot com
        ReportedBy: hjl at lucon dot org
                CC: glibc-bugs at sources dot redhat dot com


http://sourceware.org/bugzilla/show_bug.cgi?id=1579

------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]