[U-Boot] arm: wrong Relocation and not cleared BSS

Albert ARIBAUD albert.aribaud at free.fr
Tue Nov 2 10:04:25 CET 2010


Le 02/11/2010 09:53, V, Aneesh a écrit :

> My .rel.dyn was not empty even before taking your fix.
>
> This is what puzzled me. When I dumped the ELF headers with 'objdump -h'
> ..rel.dyn seemed to have some content: Please see the diff of objdump's
> output before and after applying your patch.
>
> Please note that .rel.dyn was there even without the patch having the
> same size but at a different offset.
>
> So, this is what it looks like to me:
> Even when our rule in .lds was not correct the linker generated
> ..rel.dyn section by default putting together the 'rel*' sections that
> were not covered by any rules. But since it didn't use our rule for
> this, the labels associated with our rule indicated zero size.

Correct: the linker dumped the ununsed .rel* input sections so you can 
see them, but they were outside of _rel_dyn_start / _rel_dyn_end, so for 
all useful purposes, we can say that .rel.dyn was empty. What was not 
empty was some other place in the binary that was not .rel.dyn as such.

> We did not face the second issue because we are loading the entire
> u-boot.bin using a separate preloader.

Ok.

> Best regards,
> Aneesh

Amicalement,
-- 
Albert.


More information about the U-Boot mailing list