[coreboot] New patch to review for filo: a3b01ec Call lib_get_sysinfo() again after relocation

Nico Huber (nico.huber@secunet.com) gerrit at coreboot.org
Fri Nov 23 16:25:49 CET 2012


Nico Huber (nico.huber at secunet.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/1908

-gerrit

commit a3b01ec0fefd99d87567b37e9af373b3b2a1fe20
Author: Nico Huber <nico.huber at secunet.com>
Date:   Fri Nov 23 15:56:02 2012 +0100

    Call lib_get_sysinfo() again after relocation
    
    libpayload uses virtual pointers in lib_sysinfo, now, that are invalid
    after relocation. So call lib_get_sysinfo() a second time after
    relocation.
    
    Change-Id: I53ffe4b29044e0fdb9beb4376f5e6e4ad92b2adf
    Signed-off-by: Nico Huber <nico.huber at secunet.com>
---
 main/filo.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/main/filo.c b/main/filo.c
index eba6603..3187165 100644
--- a/main/filo.c
+++ b/main/filo.c
@@ -72,6 +72,10 @@ static void init(void)
     collect_sys_info(&sys_info);
     relocate();
 
+    /* lib_sysinfo may contain virtual pointers that are invalid
+       after relocation. Therefore, run lib_get_sysinfo(), again. */
+    lib_get_sysinfo();
+
 #if defined(CONFIG_LIBPAYLOAD_STORAGE) && defined(CONFIG_STORAGE)
     /* libpayload storage drivers */
     storage_initialize();




More information about the coreboot mailing list