[PATCH v11 03/29] linker_lists: set LINKER_LIST_ALIGN to 8 for CPU_MIPS64
Ilias Apalodimas
ilias.apalodimas at linaro.org
Fri Oct 4 09:12:07 CEST 2024
On Thu, 3 Oct 2024 at 18:23, Jerome Forissier
<jerome.forissier at linaro.org> wrote:
>
> Note: Patch posted separately [0].
>
> [0] https://patchwork.ozlabs.org/project/uboot/patch/20241003142030.1610222-1-jerome.forissier@linaro.org/
>
> CPU_MIPS64 needs 8-byte alignment on the linker lists, otherwise an
> exception may occur. Fixes an issue found on malta64 with QEMU:
>
> Breakpoint 1, lists_driver_lookup_name (name=0xffffffffbe043578 "root_driver") at /home/uboot/u-boot/drivers/core/lists.c:31
> 31 if (!strcmp(name, entry->name))
> [...]
> ld a1,0(s0)
>
> (gdb) p/x &entry->name
> 0xffffffffbe04b0d4
> (gdb) p/x $s0
> 0xffffffffbe04b0d4
>
> $ grep __u_boot_list /tmp/malta64/u-boot.objdump
> 4 __u_boot_list 000018e0 ffffffffbe04a4d4 ffffffffbe04a4d4 0004a584 2**2
>
> Signed-off-by: Jerome Forissier <jerome.forissier at linaro.org>
> ---
> arch/Kconfig | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/Kconfig b/arch/Kconfig
> index 8f1f4667012..8f4df849801 100644
> --- a/arch/Kconfig
> +++ b/arch/Kconfig
> @@ -45,7 +45,7 @@ config SYS_CACHELINE_SIZE
> config LINKER_LIST_ALIGN
> int
> default 32 if SANDBOX
> - default 8 if ARM64 || X86
> + default 8 if ARM64 || X86 || CPU_MIPS64
> default 4
> help
> Force the each linker list to be aligned to this boundary. This
> --
> 2.40.1
>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas at linaro.org>
More information about the U-Boot
mailing list