diff mbox series

[1/1] arm: Add SPL build check to SPL early bss clear

Message ID 20200719232647.6996-2-bdm310@gmail.com
State Superseded
Delegated to: Tom Rini
Headers show
Series Fix SPL_EARLY_BSS applying to normal build | expand

Commit Message

Brian Moyer July 19, 2020, 11:26 p.m. UTC
SPL_CLEAR_BSS is called regardless of build type if
CONFIG_SPL_EARLY_BSS is defined. Add a guard for CONFIG_SPL_BUILD
to fix.

Signed-off-by: Brian Moyer <bdm310@gmail.com>
---

 arch/arm/lib/crt0.S | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Brian Moyer July 24, 2020, 6:54 a.m. UTC | #1
This felt like a sparsely used feature that I found a bug in and could
easily fix as a first contribution to the project. Through more
testing on my end, it seems that something is not as it appeared at
first glance. Switching branches to build this patch and then back to
my main development branch resulted in the same strange malloc
behavior that I thought I was fixing here, which only resolved after
reverting this patch.

I'd like to understand why SPL_CLEAR_BSS needs to be called in both
SPL and u-boot, if someone better versed in what's going on here can
take the time.

On Sun, Jul 19, 2020 at 4:26 PM Brian Moyer <bdm310@gmail.com> wrote:
>
> SPL_CLEAR_BSS is called regardless of build type if
> CONFIG_SPL_EARLY_BSS is defined. Add a guard for CONFIG_SPL_BUILD
> to fix.
>
> Signed-off-by: Brian Moyer <bdm310@gmail.com>
> ---
>
>  arch/arm/lib/crt0.S | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/arch/arm/lib/crt0.S b/arch/arm/lib/crt0.S
> index df9dd83e40..fd6c4874f8 100644
> --- a/arch/arm/lib/crt0.S
> +++ b/arch/arm/lib/crt0.S
> @@ -109,7 +109,7 @@ ENTRY(_main)
>         mov     r9, r0
>         bl      board_init_f_init_reserve
>
> -#if defined(CONFIG_SPL_EARLY_BSS)
> +#if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_EARLY_BSS)
>         SPL_CLEAR_BSS
>  #endif
>
> --
> 2.17.1
>
diff mbox series

Patch

diff --git a/arch/arm/lib/crt0.S b/arch/arm/lib/crt0.S
index df9dd83e40..fd6c4874f8 100644
--- a/arch/arm/lib/crt0.S
+++ b/arch/arm/lib/crt0.S
@@ -109,7 +109,7 @@  ENTRY(_main)
 	mov	r9, r0
 	bl	board_init_f_init_reserve
 
-#if defined(CONFIG_SPL_EARLY_BSS)
+#if defined(CONFIG_SPL_BUILD) && defined(CONFIG_SPL_EARLY_BSS)
 	SPL_CLEAR_BSS
 #endif