diff options
author | Nick Bofferding <bofferdn@us.ibm.com> | 2018-02-26 23:27:41 -0600 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2018-03-01 09:48:25 -0500 |
commit | a8b0039d4e3af6fb2a7cbc82b328fa73e14dbc30 (patch) | |
tree | 3f5685cc321a4c1af0a8bd6b7244233ca98793b3 /src/include | |
parent | 2414e7c8e5de03e829022693f7813809313f40fc (diff) | |
download | talos-hostboot-a8b0039d4e3af6fb2a7cbc82b328fa73e14dbc30.tar.gz talos-hostboot-a8b0039d4e3af6fb2a7cbc82b328fa73e14dbc30.zip |
Clear FCO deconfigures before applying gard records
When an EX is deconfigured, its parent EQ is deconfigured by association if all
resources under it happen to be deconfigured, even if some of those resources
are FCO deconfigures. Later, FCO deconfigures are removed to determine a new
FCO allocation. If an FCO resource is allocated under that deconfigured EQ,
the system may not boot, as those resources will appear to be orphaned. This
change reorders FCO/gard processing to clear the FCO deconfigures, apply
gard records, then allocate FCO resources, so that the EQ in the noted scenario
remains configured, allowing child FCO resources to be used.
CQ: SW417765
Change-Id: I22817b0bae0df0dfabd7e02ec8afa91033e092ca
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/54738
CI-Ready: Nicholas E. Bofferding <bofferdn@us.ibm.com>
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: ILYA SMIRNOV <ismirno@us.ibm.com>
CI-Ready: Marshall J. Wilks <mjwilks@us.ibm.com>
Reviewed-by: Michael Baiocchi <mbaiocch@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: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/include')
-rw-r--r-- | src/include/usr/hwas/common/deconfigGard.H | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/src/include/usr/hwas/common/deconfigGard.H b/src/include/usr/hwas/common/deconfigGard.H index b0f4e11aa..25e12f455 100644 --- a/src/include/usr/hwas/common/deconfigGard.H +++ b/src/include/usr/hwas/common/deconfigGard.H @@ -295,7 +295,15 @@ public: * * @return errlHndl_t. Error log Handle * */ - errlHndl_t platReLogGardError(GardRecord &i_gardRecord); + errlHndl_t platReLogGardError(GardRecord &i_gardRecord); + + /** + * @brief Clears all FCO deconfigures across all nodes, in preparation for + * assigning FCO resources. Must be run prior to applying GARD records + * to avoid contention with deconfig by association corner cases. + */ + void clearFcoDeconfigures(); + /** * @brief Processes the Field Core Override attribute * |