[U-Boot] [PATCH] relocation: Do not relocate NULL pointers.

Joakim Tjernlund joakim.tjernlund at transmode.se
Mon Sep 28 09:28:23 CEST 2009


Graeme Russ <graeme.russ at gmail.com> wrote on 28/09/2009 01:23:36:
>
> On Mon, Sep 28, 2009 at 2:18 AM, Joakim Tjernlund
> <joakim.tjernlund at transmode.se> wrote:
> > Graeme Russ <graeme.russ at gmail.com> wrote on 27/09/2009 15:52:38:
> >>
> >> On Sun, Sep 27, 2009 at 11:15 PM, Joakim Tjernlund
> >> <joakim.tjernlund at transmode.se> wrote:
> >> > Wolfgang Denk <wd at denx.de> wrote on 23/09/2009 20:23:14:
> >> >>
> >> >> Dear Peter Tyser,
> >> >>
> >> >> In message <1253710639.3968.19.camel at ptyser-laptop> you wrote:
> >> >> >
> >>
> >> >>
> >> >> > Nice!  It'd be great to have the magical 20 lines of assembly put into
> >> >> > some semi-understandable c.
> >> >>
> >> >> :-)
> >
> > hmm, I don't know x86 that well, but I did look at your
> >  [RFC][PATCH 8/8] Final i386 Relocation
> > and I don't understand it fully. To make sure, is it possible for you
> > to link at address X and run from address Y directly from flash?
> >
> >   Jocke
> >
> >
>
> Ah, I know understand what you are trying to achieve - No, my code does
> not allow for in-flash relocation.
>
> My code processes the ELF relocation structures rel.got (which has pointers
> into .got), got.plt (which is where the location of .got is retrieved at
> run-time), rel.dyn (pointers into other sections other than .got), .dynamic
> and .dynsym
>
> I must admit, I do not know why there are so many sections which need to
> be patched - I originally thought that only .got would need modifying, but
> the rabbit-hole is much deeper

Sounds a bit much. I did a lot of LDSO work for uClibc some years ago but
I forgot the details now :(
But I I do remember one thing, try using -Bsymbolic when linking.

      Jocke



More information about the U-Boot mailing list