Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Tom Tromey <tromey@redhat.com>
To: Mark Kettenis <mark.kettenis@xs4all.nl>
Cc: jan.kratochvil@redhat.com, gdb-patches@sourceware.org,
	gbenson@redhat.com
Subject: Re: [RFA] Improved linker-debugger interface
Date: Wed, 09 May 2012 15:57:00 -0000	[thread overview]
Message-ID: <87fwb9tkjh.fsf@fleche.redhat.com> (raw)
In-Reply-To: <201205090811.q498BqhT006233@glazunov.sibelius.xs4all.nl> (Mark	Kettenis's message of "Wed, 9 May 2012 10:11:52 +0200 (CEST)")

>>>>> "Mark" == Mark Kettenis <mark.kettenis@xs4all.nl> writes:

Mark>   <http://sourceware.org/systemtap/SystemTap_Beginners_Guide/userspace-probing.html>

Mark> which mentions the dependency on utrace quite prominently.

You want http://sourceware.org/systemtap/wiki/UserSpaceProbeImplementation

Mark> Anyway, with my misunderstandings about SystemTap cleared up, my
Mark> reservations about using probes to handle runt-time linker events are
Mark> gone.  I still do think that having those probes in the official glibc
Mark> tree should be a prerequisite for ading this code to glibc.  These
Mark> probes effectively become part of the libc ABI[1].  We need some sort
Mark> of commitment from the glibc developers to not break that ABI.  And in
Mark> my view the only way to achieve this is to have those probes upstream.

FWIW for the longjmp case, where the code is currently in-tree, there
really aren't alternative code paths to consider.  Due to PC mangling,
the existing longjmp code simply doesn't work with any glibc newer than
2006 or so.

I've asked the local glibc folks to try again to push the patches.

If you take Roland's lack of ABI promise seriously, and combine it with
your reasoning above, then we must never use these probes in gdb.  But,
that is an absurd result, since the probes basically exist for use by
gdb.

So, something has to give.

I think that if gdb were using the probes, we can use this to argue that
glibc should only make ABI-compatible changes.  The ABI rules for probes
are much more relaxed than the rules for normal C constructs, so this is
not a problem.

There are two choices for ABI compatible changes here; one is to keep
existing probe names and arguments, adding any needed new arguments to
the end of the list; or simply renaming the probes.  Deleting probes is
also ok (contrary to the usual glibc ABI rules), because gdb and other
users will always be adaptive.

In sum, I don't consider this a problem in practice.  I'm confident that
glibc maintainers will listen to reason.

Tom


      reply	other threads:[~2012-05-09 15:57 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-05-04 15:22 Gary Benson
2012-05-05  4:39 ` Sergio Durigan Junior
2012-05-05  6:03   ` Jan Kratochvil
2012-05-05  6:11     ` Sergio Durigan Junior
2012-05-05  6:23       ` Jan Kratochvil
2012-05-07 16:57 ` Jan Kratochvil
2012-05-07 17:51   ` Sergio Durigan Junior
2012-05-07 20:27   ` Tom Tromey
2012-05-07 21:32     ` Mark Kettenis
2012-05-07 21:44       ` Jan Kratochvil
2012-05-08  5:45       ` Sergio Durigan Junior
2012-05-08 13:37       ` Tom Tromey
2012-05-09  8:12         ` Mark Kettenis
2012-05-09 15:57           ` Tom Tromey [this message]

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=87fwb9tkjh.fsf@fleche.redhat.com \
    --to=tromey@redhat.com \
    --cc=gbenson@redhat.com \
    --cc=gdb-patches@sourceware.org \
    --cc=jan.kratochvil@redhat.com \
    --cc=mark.kettenis@xs4all.nl \
    /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