From c894380c8e13c749bcd5e58591a4b37047f43953 Mon Sep 17 00:00:00 2001 From: Christian Geddes Date: Fri, 13 Apr 2018 11:46:00 -0500 Subject: Ensure that we only attempt to recover from vital attn on BMC systems On an FSP system PRD should never get triggered on an SBE vital attn. However if for any reason PRD attempts to handle a vital attn on an FSP system HB should not actually perform any recovery and we should just return an error back to PRD signaling that we could not recover. PRD should stop mask off the error after the handler returns with an error saying we could not recover. Change-Id: If1666bd028da9a94bed34d79da34f6264beb0fbf Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/57176 CI-Ready: Christian R. Geddes Reviewed-by: Martin Gloff Tested-by: Jenkins Server Tested-by: Jenkins OP Build CI Tested-by: Jenkins OP HW Tested-by: FSP CI Jenkins Reviewed-by: Roland Veloz Reviewed-by: William G. Hoffa --- src/usr/sbeio/common/sbe_attn.C | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'src/usr/sbeio/common/sbe_attn.C') diff --git a/src/usr/sbeio/common/sbe_attn.C b/src/usr/sbeio/common/sbe_attn.C index 2fb0cf1da..338dc62c9 100644 --- a/src/usr/sbeio/common/sbe_attn.C +++ b/src/usr/sbeio/common/sbe_attn.C @@ -73,7 +73,14 @@ namespace SBEIO SbeRetryHandler l_sbeObj = SbeRetryHandler( SbeRetryHandler::SBE_MODE_OF_OPERATION::ATTEMPT_REBOOT); + // We only want to handle vital attentions on BMC based systems. + // If we have a FSP we should be ignoring Vital attentions and + // the handleVitalAttn should have never been called. This + // check just ensures on an FSP system we will not disrupt other + // code that is attempting to handle the SBE fail +#ifndef CONFIG_FSP_BUILD l_sbeObj.main_sbe_handler(i_procTarg); +#endif // Check if the SBE made it back to runtime, this tells us if the retry was a // success or not -- cgit v1.2.1