public inbox for gdb@sourceware.org
 help / color / mirror / Atom feed
From: Roland McGrath <roland@redhat.com>
To: davidm@hpl.hp.com
Cc: gdb@sources.redhat.com, binutils@sources.redhat.com
Subject: Re: [davidm@napali.hpl.hp.com: readelf question]
Date: Tue, 17 Jun 2003 20:44:00 -0000	[thread overview]
Message-ID: <200306172044.h5HKieb29320@magilla.sf.frob.com> (raw)
In-Reply-To: David Mosberger's message of  Tuesday, 17 June 2003 13:14:45 -0700 <16111.30389.189801.925393@napali.hpl.hp.com>

>   Andrew> Last I heard was a kernel patch to make auxv info available
>   Andrew> in the core file, and via the /proc and ptrace interfaces.
> 
> Yes: auxv, core, and ptrace are there.  I don't think /proc support is
> there.  Not sure if Roland is planning to do something about that.

To clarify, I think what David's saying (and what I think is the case) is
that access to these memory regions via core dumps and ptrace does work
just like any other user address, and that the startup-time aux vector on a
process's stack contains AT_SYSINFO_EHDR to tell the process the location.

The piece that still remains missing is gdb finding out where the DSO is,
i.e. the AT_SYSINFO_EHDR value of a traced process.  For that, I've
proposed a new /proc/PID/auxv virtual file and a new NT_AUXV note in core
dumps (these match exactly what Solaris provides).  I posted a patch to
implement this in Linux 2.5 to lkml on May 15; it was met with resounding
silence.  Pushing that patch has not been top priority since then, since
this issue affects gdb only with 2.5 kernels and so is not an imminent
concern for the Red Hat products I work on.  

After posting that patch, I realized it had a leak.  I didn't bother to
follow up with the corrected patch immediately, since my posting of the
first patch had failed to solicit any response of any kind even on the
question of the interface.  I would be happy to dust off that patch and
send it to you, post it again, or send it anywhere else that would increase
the likelihood of getting some response about it.  If Linux kernel folks
are happy enough with the interface but not with the implementation, I
would be glad to rewrite it as requested.  

>   Andrew> Thing is, if that's done, those extra memory sections can go
>   Andrew> back to being extra memory sections (and everything becomes
>   Andrew> much simpler).

I don't really understand what this comment means from its content.  The
special page(s) the kernel provides for the vsyscall/gate DSO are already
normal regions of memory as far as access via ptrace, /proc, and ocre dumps
is concerned.  I can guess from Andrew's past comments that he is in fact
talking about the auxv access feature, and trying to say that he believes
having that simplifies the interpretation of core files as opposed to using
the core files' new phdrs for that (something that is in fact trivial and
I've already implemented).  

In prior discussion, it was the clear conclusion that gdb hackers' highest
preference is for the /proc/PID/auxv+NT_AUXV kernel interface being added.
I have repeatedly made clear that I am happy to implement whatever
combination of things jibes best with the preferences of Linux kernel
hackers and gdb hackers.  So far we have no input whatosever on what the
preferences from the kernel side might be.

> I don't have much of a preference myself.  I'm sure Roland has thought
> much more about the user-level parts of the support than I have
> (though I do like the idea of being able to get symbol and library
> info for the kernel DSO(s); not sure how you'd do that with plain
> memory sections).

We have discussed it in great detail on the gdb list.
Check the archives.


Thanks,
Roland

  parent reply	other threads:[~2003-06-17 20:44 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-06-13 14:57 H. J. Lu
2003-06-17  8:14 ` Nick Clifton
2003-06-17 18:56   ` David Mosberger
2003-06-17 19:27     ` Andrew Cagney
2003-06-17 20:14       ` David Mosberger
2003-06-17 20:41         ` Andrew Cagney
2003-06-17 20:44         ` Roland McGrath [this message]
2003-06-17 21:00           ` David Mosberger
2003-06-17 21:15             ` Andrew Cagney
2003-06-17 21:06           ` Daniel Jacobowitz
2003-06-17 20:26 ` Roland McGrath

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=200306172044.h5HKieb29320@magilla.sf.frob.com \
    --to=roland@redhat.com \
    --cc=binutils@sources.redhat.com \
    --cc=davidm@hpl.hp.com \
    --cc=gdb@sources.redhat.com \
    /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).