summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/include/usr/sbeio/sbeioreasoncodes.H3
-rw-r--r--src/usr/sbeio/common/sbe_retry_handler.C31
2 files changed, 31 insertions, 3 deletions
diff --git a/src/include/usr/sbeio/sbeioreasoncodes.H b/src/include/usr/sbeio/sbeioreasoncodes.H
index a0b7aac68..cd4d97b4c 100644
--- a/src/include/usr/sbeio/sbeioreasoncodes.H
+++ b/src/include/usr/sbeio/sbeioreasoncodes.H
@@ -5,7 +5,7 @@
/* */
/* OpenPOWER HostBoot Project */
/* */
-/* Contributors Listed Below - COPYRIGHT 2013,2017 */
+/* Contributors Listed Below - COPYRIGHT 2013,2018 */
/* [+] International Business Machines Corp. */
/* */
/* */
@@ -120,6 +120,7 @@ enum sbeioReasonCode
SBEIO_INCORRECT_FCN_CALL = SBEIO_COMP_ID | 0x56,
SBEIO_RETURNED_FFDC = SBEIO_COMP_ID | 0x57,
SBEIO_SLAVE_TIMEOUT = SBEIO_COMP_ID | 0x58,
+ SBEIO_ATTEMPTING_REBOOT = SBEIO_COMP_ID | 0x59,
// SBE Vital Attention error codes
SBEIO_SBE_RC_VALUE_INFO = SBEIO_COMP_ID | 0x60,
diff --git a/src/usr/sbeio/common/sbe_retry_handler.C b/src/usr/sbeio/common/sbe_retry_handler.C
index ed7bfb11d..e2889bf16 100644
--- a/src/usr/sbeio/common/sbe_retry_handler.C
+++ b/src/usr/sbeio/common/sbe_retry_handler.C
@@ -880,10 +880,37 @@ bool SbeRetryHandler::sbe_boot_fail_handler(TARGETING::Target * i_target,
SBE_TRACF("p9_extract_sbe_rc HWP returned action %d and errorlog "
"PLID=0x%x, rc=0x%.4X", this->iv_currentAction,
l_errl->plid(), l_errl->reasonCode() );
- delete l_errl;
- l_errl = nullptr;
+ errlCommit(l_errl, SBEIO_COMP_ID);
}
+ SBE_TRACF("sbe_boot_fail_handler: We have hit an error in the SBE "
+ "and hostboot will now attempt to reboot the SBE");
+ /*@
+ * @errortype
+ * @severity ERRORLOG::ERRL_SEV_PREDICTIVE
+ * @moduleid SBEIO_EXTRACT_RC_HANDLER
+ * @reasoncode SBEIO_ATTEMPTING_REBOOT
+ * @userdata1 HUID of proc which had the SBE timeout
+ * @userdata2 Current action to be taken on the SBE
+ * @devdesc HWP has returned a reboot action to be taken
+ * Hostboot will now attempt to reboot the SBE
+ * @custdesc A processor in the system has failed to initialize.
+ * Hostboot is attempting a recovery.
+ */
+ l_errl = new ERRORLOG::ErrlEntry(ERRORLOG::ERRL_SEV_PREDICTIVE,
+ SBEIO_EXTRACT_RC_HANDLER,
+ SBEIO_ATTEMPTING_REBOOT,
+ TARGETING::get_huid(i_target),
+ this->iv_currentAction);
+ l_errl->collectTrace("SBEIO_TRACE",KILOBYTE/4);
+
+ // Set the PLID of the error log to caller's PLID if provided
+ if(iv_callerErrorLogPLID)
+ {
+ l_errl->plid(iv_callerErrorLogPLID);
+ }
+ errlCommit(l_errl,SBEIO_COMP_ID);
+
if(INITSERVICE::spBaseServicesEnabled())
{
#ifndef __HOSTBOOT_RUNTIME
OpenPOWER on IntegriCloud