[Skiboot] [PATCH] core/init: Fix failure of getting node in the free list.

ppaidipe at linux.vnet.ibm.com ppaidipe at linux.vnet.ibm.com
Sun Aug 21 20:51:59 AEST 2016


From: Pridhiviraj Paidipeddi <ppaidipe at linux.vnet.ibm.com>

Currently we are getting request to queue occ load opal message when host services
got load occ request from FSP. This request we got before initializing opal messaging
due to which we are failed to get list node from msg_free_list list.

[3204300512,3] opalmsg: No available node in the free list, allocating

This patch fixes this issue by initializing opal messaging(opal_init_msg) before
platform.init, as in platform.init we are loading host services lid and getting
occ load request command from FSP. So when opal_init_msg initializes we will
be initialized msg_free_list with an empty list.

Signed-off-by: Pridhiviraj Paidipeddi <ppaidipe at linux.vnet.ibm.com>
---
 core/init.c | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/core/init.c b/core/init.c
index 86bcdea..decad2b 100644
--- a/core/init.c
+++ b/core/init.c
@@ -746,6 +746,13 @@ void __noreturn main_cpu_entry(const void *fdt, u32 master_cpu)
 	/* Register routine to dispatch and read sensors */
 	sensor_init();
 
+        /*
+	 * Initialize the opal messaging before platform.init as we are
+	 *  getting request to queue occ load opal message when host services
+	 *  got load occ request from FSP
+	 */
+        opal_init_msg();
+
 	/*
 	 * We have initialized the basic HW, we can now call into the
 	 * platform to perform subsequent inits, such as establishing
@@ -773,9 +780,6 @@ void __noreturn main_cpu_entry(const void *fdt, u32 master_cpu)
 	/* NX init */
 	nx_init();
 
-	/* Initialize the opal messaging */
-	opal_init_msg();
-
 	/* Probe IO hubs */
 	probe_p7ioc();
 
-- 
2.7.4



More information about the Skiboot mailing list