[U-Boot] [PATCH] ppc: unused memory region too close to current stack pointer
Norbert van Bolhuis
nvbolhuis at aimvalley.nl
Fri Mar 19 15:34:25 CET 2010
This avoids a possible overwrite of the (end of) ramdisk by u-boot.
The unused memory region for ppc boot currently starts 1k below the
do_bootm->bootm_start->arch_lmb_reserve stack ptr. This isn't enough since
do_bootm->do_bootm_linux->boot_relocate_fdt calls printf which may
very well use more than 1k stack space.
diff --git a/lib_ppc/bootm.c b/lib_ppc/bootm.c
index 0685a93..6702df5 100644
--- a/lib_ppc/bootm.c
+++ b/lib_ppc/bootm.c
@@ -163,8 +163,8 @@ void arch_lmb_reserve(struct lmb *lmb)
sp = get_sp();
debug ("## Current stack ends at 0x%08lx\n", sp);
- /* adjust sp by 1K to be safe */
- sp -= 1024;
+ /* adjust sp by 4K to be safe */
+ sp -= 4096;
lmb_reserve(lmb, sp, (CONFIG_SYS_SDRAM_BASE + get_effective_memsize() - sp));
return ;
--
1.5.2.2
Signed-off-by: Norbert van Bolhuis <nvbolhuis at aimvalley.nl>
More information about the U-Boot
mailing list