[coreboot] [PATCH] Fix v3 GeodeLX stack and global variable pointer corruption
Carl-Daniel Hailfinger
c-d.hailfinger.devel.2006 at gmx.net
Wed Oct 8 02:08:05 CEST 2008
Fix v3 GeodeLX stack and global variable pointer corruption.
We had a jump instead of a call to stage1_main in geodelx/stage0.S. That
means all accesses to bist and init_detected were off by 8 bytes and
collided with accesses to the global variable pointer.
Found during my cleanup runs.
Signed-off-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006 at gmx.net>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006 at gmx.net>
Index: corebootv3-arch_x86_cleanup/arch/x86/geodelx/stage0.S
===================================================================
--- corebootv3-arch_x86_cleanup/arch/x86/geodelx/stage0.S (Revision 907)
+++ corebootv3-arch_x86_cleanup/arch/x86/geodelx/stage0.S (Arbeitskopie)
@@ -376,7 +376,7 @@
pushl $0
/* First parameter: bist */
pushl %eax
- jmp stage1_main
+ call stage1_main
/* We will not go back. */
/* Reset vector. */
--
http://www.hailfinger.org/
More information about the coreboot
mailing list