[PATCH] elf: Add -z [dt-debugsz|nodt-debugsz] to emit DT_DEBUGSZ
H.J. Lu
hjl.tools@gmail.com
Sun Aug 15 13:48:21 GMT 2021
On Sun, Aug 15, 2021 at 6:17 AM Florian Weimer <fw@deneb.enyo.de> wrote:
>
> * H. J. Lu:
>
> > On Sun, Aug 15, 2021 at 5:50 AM H.J. Lu <hjl.tools@gmail.com> wrote:
> >>
> >> On Sun, Aug 15, 2021 at 4:55 AM Florian Weimer <fw@deneb.enyo.de> wrote:
> >> >
> >> > * H. J. Lu via Gdb-patches:
> >> >
> >> > > Add -z [dt-debugsz|nodt-debugsz] to emit a DT_DEBUGSZ dynamic tag so
> >> > > that the dynamic linker can set its value to the size of the structure
> >> > > of debugger interface, whose address is stored in the DT_DEBUG dynamic
> >> > > tag, used by the dynamic linker.
> >> >
> >> > I do not think this is necessary. We can increase the version number
> >> > in the existing DT_DEBUG structure.
> >>
> >> Some debuggers expect r_version == 1.
> >
> > GDB has
> >
> > if (linux_read_memory (priv->r_debug + lmo->r_version_offset,
> > (unsigned char *) &r_version,
> > sizeof (r_version)) != 0
> > || r_version != 1)
> > {
> > warning ("unexpected r_debug version %d", r_version);
> > }
> > else if (read_one_ptr (priv->r_debug + lmo->r_map_offset,
> > &lm_addr, ptr_size) != 0)
> > {
> > warning ("unable to read r_map from 0x%lx",
> > (long) priv->r_debug + lmo->r_map_offset);
> > }
>
> Does this mean it's just a warning?
When the warning happens, it won't read r_map.
--
H.J.
More information about the Binutils
mailing list