[U-Boot] [PATCH v1] Refactor linker-generated arrays

Jeroen Hofstee jeroen at myspectrum.nl
Sat Feb 2 19:42:40 CET 2013


Hello Albert,

On 02/02/2013 06:02 PM, Albert ARIBAUD wrote:
> Refactor linker-generated array code so that symbols
> which were previously linker-generated are now compiler-
> generated. This causes relocation records of type
> R_ARM_ABS32 to become R_ARM_RELATIVE, which makes
> code which uses LGA able to run before relocation as
> well as after.
>
> Note: this affects more than ARM targets, as linker-
> lists span possibly all target architectures, notably
> PowerPC.
>
> Signed-off-by: Albert ARIBAUD <albert.u.boot at aribaud.net>
> ---
Command completion currently traps with U-Boot master on a
twister board, as mentioned in [1]. Depending on random,
valid changes in the code, the name pointers in the command
list can become corrupted. Although this patch shouldn't effect
code running after relocation, it does prevent the incorrect
pointers and solves mentioned problem. The exact reason is
unknown, but it might be that code running before relocation
corrupts the data used after relocation.

At least this patch fixes the behaviour for the twister and prevents
that I get completely insane, thanks!

For the twister:
Tested-by: Jeroen Hofstee <jhofstee at myspectrum.nl>

Thanks,
Jeroen

[1] http://lists.denx.de/pipermail/u-boot/2013-February/145709.html



More information about the U-Boot mailing list