This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: [RFA/solib-svr4] use AT_BASE auxiliary entry to compute load base address
- From: "Ulrich Weigand" <uweigand at de dot ibm dot com>
- To: drow at false dot org (Daniel Jacobowitz)
- Cc: brobecker at adacore dot com (Joel Brobecker), gdb-patches at sourceware dot org
- Date: Thu, 17 Apr 2008 23:31:18 +0200 (CEST)
- Subject: Re: [RFA/solib-svr4] use AT_BASE auxiliary entry to compute load base address
Daniel Jacobowitz wrote:
> On Thu, Apr 17, 2008 at 05:11:38PM +0200, Ulrich Weigand wrote:
> > GDB used to work correctly in the presence of prelinking anyway,
> > because for regular shared libraries it detected that mismatch by
> > comparing the load addresses from the BFD it reads with those
> > recorded in the dynamic loader's data structures (LM_ADDR_CHECK),
> > and adjusting its expectations if it detects prelinking.
>
> Can we read the dynamic linker's ELF header from the target, to
> compare?
>
> Wait, no, we can't... if we knew where it was loaded we wouldn't
> need AT_BASE. Well, we could ask gdbserver to read from the
> target filesystem for us...
Yes, that's on my to-do list anyway ...
However, even that would not fix the same issue with core files
(if prelink changed a library between core file generation and
use in GDB).
Bye,
Ulrich
--
Dr. Ulrich Weigand
GNU Toolchain for Linux on System z and Cell BE
Ulrich.Weigand@de.ibm.com