summaryrefslogtreecommitdiffstats
path: root/src/include/usr/hwas
diff options
context:
space:
mode:
authorAndrew Geissler <andrewg@us.ibm.com>2018-06-13 13:40:39 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2018-06-19 12:18:25 -0400
commitea86539a69de1f7415cf697fba5c35b8970a7db4 (patch)
tree9f2289fb9a51a2bf77a742c0639522a9c56869d1 /src/include/usr/hwas
parent74bfadb2ab8796c738c7d951041d890261aee293 (diff)
downloadtalos-hostboot-ea86539a69de1f7415cf697fba5c35b8970a7db4.tar.gz
talos-hostboot-ea86539a69de1f7415cf697fba5c35b8970a7db4.zip
Ensure hwas state reflects resource recovery actions
Once resource recovery is run to recover hardware resources to allow the system to boot, it will not be run again until the configuration of the hardware changes. An issue with that design is that the HWAS state, deconfiguredByEid, will not be properly updated in situations where resource recovery has already run. This state is used by the gard command line tool to inform the user on the state of their garded hardware. This commit ensure the deconfiguredByEid is properly updated for targets that are guarded, but have been resource recovered to allow system boot. Change-Id: Ib15c1e8402e7c13b6497915c5138831e5e591bbe CQ: SW432846 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/60486 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Tested-by: Jenkins OP HW <op-hw-jenkins+hostboot@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: DHRUVARAJ SUBHASH CHANDRAN <dhruvaraj@in.ibm.com> Reviewed-by: ARAVIND T. NAIR <aravindnair@in.ibm.com> Reviewed-by: William G. Hoffa <wghoffa@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/include/usr/hwas')
-rw-r--r--src/include/usr/hwas/common/deconfigGard.H19
1 files changed, 19 insertions, 0 deletions
diff --git a/src/include/usr/hwas/common/deconfigGard.H b/src/include/usr/hwas/common/deconfigGard.H
index 5ef453da2..150602606 100644
--- a/src/include/usr/hwas/common/deconfigGard.H
+++ b/src/include/usr/hwas/common/deconfigGard.H
@@ -271,6 +271,25 @@ public:
errlHndl_t clearGardRecordsByType(GARD_ErrorType i_type);
/**
+ * @brief Update HWAS fields for resource recovered targets
+ *
+ * @param i_pPredicate restrict processing - only look at GARD records
+ * for targets that match the predicate (optional)
+ *
+ * If a speculatively garded resource has been enabled due to resource
+ * recovery then we need to ensure it's HWAS states are properly updated
+ * to reflect this.
+ *
+ * This function should only be called in situations where speculative
+ * deconfig/resource recovery is being skipped due to it already being
+ * run in a previous boot (i.e. ATTR_BLOCK_SPEC_DECONFIG == 1)
+ *
+ * @return errlHndl_t. Error log handle.
+ */
+ errlHndl_t updateSpecDeconfigTargetStates(
+ const TARGETING::PredicateBase *i_pPredicate = NULL);
+
+ /**
* @brief Deconfigures Targets that have GARD Records in preparation to IPL.
*
* @param i_pPredicate restrict processing - only look at GARD records
OpenPOWER on IntegriCloud