public inbox for glibc-bugs@sourceware.org
help / color / mirror / Atom feed
From: "gbenson at redhat dot com" <sourceware-bugzilla@sourceware.org>
To: glibc-bugs@sourceware.org
Subject: [Bug dynamic-link/15971] New: No interface for debugger access to libraries loaded with dlmopen
Date: Thu, 19 Sep 2013 15:00:00 -0000	[thread overview]
Message-ID: <bug-15971-131@http.sourceware.org/bugzilla/> (raw)

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

            Bug ID: 15971
           Summary: No interface for debugger access to libraries loaded
                    with dlmopen
           Product: glibc
           Version: unspecified
            Status: NEW
          Severity: normal
          Priority: P2
         Component: dynamic-link
          Assignee: unassigned at sourceware dot org
          Reporter: gbenson at redhat dot com

glibc has no interface for debuggers to access libraries loaded using dlmopen
(LM_ID_NEWLM).  This issue was originally filed as GDB bug 11839.

The current rtld-debugger interface is described in the file
elf/rtld-debugger-interface.txt under the "Standard debugger interface"
heading.  This interface only provides access to the first link map
(LM_ID_BASE).  This interface is not obviously extendable for the reasons
described here: http://gbenson.net/?p=407.

The probes-based rtld-debugger interface allows debuggers to see libraries
loaded using dlmopen as they appear.  This is enough to debug applications
started in the debugger, but not enough to attach to a running process or to
debug using a core file.

There was some discussion of this subject on the libc-alpha mailing list
between November 2012 and January 2013.  The archives are not easily navigable,
but the various messages can be found here:

  https://sourceware.org/ml/libc-alpha/2012-11/subjects.html#00656
  https://sourceware.org/ml/libc-alpha/2012-12/subjects.html#00078
  https://sourceware.org/ml/libc-alpha/2013-01/subjects.html#00358

I don't know in detail what the interface should look like, but some points:

1) A Solaris-style librtld_db.so would be undesirable as it would suffer much
the same issues as libthread_db.so.

2) The interface must be usable by gdbserver, so it must be fairly lightweight.
 An interface that required eg a Python interpreter would exclude users running
gdbserver in constrained environments.

3) There are people using GDB to debug applications with 5,000 shared libraries
and more, so performance is an issue.

4) The interface should work without debugging symbols to be useful for tools
such as ABRT.

-- 
You are receiving this mail because:
You are on the CC list for the bug.


             reply	other threads:[~2013-09-19 15:00 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-09-19 15:00 gbenson at redhat dot com [this message]
2013-09-19 15:13 ` [Bug dynamic-link/15971] " carlos at redhat dot com
2013-09-19 15:13 ` carlos at redhat dot com
2013-09-27 12:19 ` jan.kratochvil at redhat dot com
2013-10-03 17:51 ` tromey at redhat dot com
2014-06-13 12:49 ` fweimer at redhat dot com
2015-02-12 11:27 ` stsp at users dot sourceforge.net
2015-02-12 12:30 ` mathieu.lacage at gmail dot com
2015-02-12 12:38 ` mathieu.lacage at gmail dot com
2015-03-27 13:54 ` fche at redhat dot com
2015-09-23 21:06 ` woodard at redhat dot com
2015-10-16 21:40 ` orion at cora dot nwra.com
2021-07-23  0:35 ` carlos at redhat dot com
2021-09-19 21:49 ` cvs-commit at gcc dot gnu.org
2021-09-19 22:04 ` hjl.tools at gmail dot com

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=bug-15971-131@http.sourceware.org/bugzilla/ \
    --to=sourceware-bugzilla@sourceware.org \
    --cc=glibc-bugs@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).