[U-Boot] U-boot's stack space on a Sequoia board

Corey Ashford cjashfor at linux.vnet.ibm.com
Sat Sep 15 02:32:53 CEST 2012


Hello,

I recently spent quite a lot of time finding a problem where U-boot was
overwriting part of its stack onto my kernel that I had downloaded via
tftpboot.

The board I am using is a Sequoia, powerpc 440EPx board running U-boot
1.2.0-gc0c292b2 (Jun 5 2007 - 07:16:12).

I found that when I booted my Linux kernel, part of its text space was
corrupted upon entry.  I traced this back to U-boot writing a command
line and board info record into its own stack space (- 2048 bytes).
This happens in common/cmd_bootm.c

What surprised me was that this board (fairly old now) has 256M of
memory, but U-boot's stack pointer was around the 8MB point (the pointer
to the board info record passed into my kernel is address 0x007ffe70 --
just under 8M).

So I have a couple of questions:

1) Any idea why the stack pointer would be so low in memory?
2) Is there any way to tell, once the board is up and running U-boot,
where its stack space is so that I can be sure to avoid running into it?

The U-boot that is running on this board wasn't compiled with DEBUG enabled.

Thanks for your consideration,

- Corey




More information about the U-Boot mailing list