diff options
author | Ilya Smirnov <ismirno@us.ibm.com> | 2018-02-21 14:38:29 -0600 |
---|---|---|
committer | Daniel M. Crowell <dcrowell@us.ibm.com> | 2018-02-23 11:04:10 -0500 |
commit | a681d519d4dc3d01b14df22ffa79c4e6bcfdec96 (patch) | |
tree | 11b75e83a4dce3ba598806a01c2f437cb76a59db /src/usr/htmgt/htmgt_occ.C | |
parent | 55e51a61f98564b86be3a34b0fccff2689a28f29 (diff) | |
download | talos-hostboot-a681d519d4dc3d01b14df22ffa79c4e6bcfdec96.tar.gz talos-hostboot-a681d519d4dc3d01b14df22ffa79c4e6bcfdec96.zip |
Pass i_skipComm to _buildOccs
In the _resetOccs path the i_skipComm parameter is not getting
passed into _buildOccs function that (almost) unconditionally
executes sendOccPoll, regardless of whether the comm was supposed
to be skipped or not. That 1) defeats the purpose of i_skipComm,
and 2) may not work in the OCC reset path depending on how far into
OCC setup the code has gotten before the reset was requested.
Change-Id: I044e1193d8ddf022ada902030c74c75076af2f42
Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/54522
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>
Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com>
Reviewed-by: Marshall J. Wilks <mjwilks@us.ibm.com>
Reviewed-by: Christopher J. Cain <cjcain@us.ibm.com>
Reviewed-by: Andres A. Lugo-Reyes <aalugore@us.ibm.com>
Reviewed-by: Nicholas E. Bofferding <bofferdn@us.ibm.com>
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/htmgt/htmgt_occ.C')
-rw-r--r-- | src/usr/htmgt/htmgt_occ.C | 13 |
1 files changed, 8 insertions, 5 deletions
diff --git a/src/usr/htmgt/htmgt_occ.C b/src/usr/htmgt/htmgt_occ.C index d19fb952e..28f862a04 100644 --- a/src/usr/htmgt/htmgt_occ.C +++ b/src/usr/htmgt/htmgt_occ.C @@ -441,7 +441,8 @@ namespace HTMGT // Query the functional OCCs and build OCC objects - errlHndl_t OccManager::_buildOccs(const bool i_occStart) + errlHndl_t OccManager::_buildOccs(const bool i_occStart, + const bool i_skipComm) { errlHndl_t err = nullptr; bool safeModeNeeded = false; @@ -591,7 +592,8 @@ namespace HTMGT safeModeNeeded = true; } - if ((false == i_occStart) && (nullptr == err)) + if ((false == i_occStart) && (nullptr == err) && + (false == i_skipComm)) { // Send poll to query state of all OCCs // and flush any errors reported by the OCCs @@ -870,7 +872,7 @@ namespace HTMGT errlHndl_t err = nullptr; bool atThreshold = false; - err = _buildOccs(); // if not a already built. + err = _buildOccs(false, i_skipComm); // if not a already built. if (nullptr == err) { if (false == int_flags_set(FLAG_RESET_DISABLED)) @@ -1502,9 +1504,10 @@ namespace HTMGT } - errlHndl_t OccManager::buildOccs(const bool i_occStart) + errlHndl_t OccManager::buildOccs(const bool i_occStart, bool i_skipComm) { - return Singleton<OccManager>::instance()._buildOccs(i_occStart); + return Singleton<OccManager>::instance()._buildOccs(i_occStart, + i_skipComm); } |