[U-Boot] [PATCH] spl: fix the new position of gd and stack
Donglin Peng
dolinux.peng at gmail.com
Thu Dec 27 14:58:27 UTC 2018
On Tue, Oct 30, 2018 at 4:20 PM Peng Donglin <dolinux.peng at gmail.com> wrote:
>
> If we enable CONFIG_SPL_SYS_MALLOC_SIMPLE and set
> CONFIG_SPL_STACK_R_MALLOC_SIMPLE_LEN, the new gd and stack
> will inside malloc area,so there is a overwrite risk.
>
> We can place the new position of gd and stack under the malloc
> area to fix this issue.
>
> Signed-off-by: Peng Donglin <dolinux.peng at gmail.com>
> ---
> common/spl/spl.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/common/spl/spl.c b/common/spl/spl.c
> index 292e659c9a..e85a153869 100644
> --- a/common/spl/spl.c
> +++ b/common/spl/spl.c
> @@ -628,7 +628,7 @@ ulong spl_relocate_stack_gd(void)
> }
> #endif
> /* Get stack position: use 8-byte alignment for ABI compliance */
> - ptr = CONFIG_SPL_STACK_R_ADDR - roundup(sizeof(gd_t),16);
> + ptr -= roundup(sizeof(gd_t), 16);
> new_gd = (gd_t *)ptr;
> memcpy(new_gd, (void *)gd, sizeof(gd_t));
> #if CONFIG_IS_ENABLED(DM)
> --
> 2.17.1
>
any suggestion?
More information about the U-Boot
mailing list