summaryrefslogtreecommitdiffstats
path: root/src/usr/fapi2
diff options
context:
space:
mode:
authorDan Crowell <dcrowell@us.ibm.com>2017-05-04 22:51:16 -0500
committerDaniel M. Crowell <dcrowell@us.ibm.com>2017-05-11 23:45:24 -0400
commit59be25cbb5d10072262c1724a454bba99827de67 (patch)
treee25bd8e2d6e8d217f8e08d863694fc7311a34d07 /src/usr/fapi2
parent114a75e27e8fd2aa81f2829885411ec00ebc5d18 (diff)
downloadblackbird-hostboot-59be25cbb5d10072262c1724a454bba99827de67.tar.gz
blackbird-hostboot-59be25cbb5d10072262c1724a454bba99827de67.zip
Protect ourselves from HWP access to dead error logs
If a HWP commits an error inline with logError() the error is committed but the pointer to the error is still there. That could result in code later on accessing the now defunct pointer if the original returncode ends up getting reused elsewhere. Change-Id: I94d0a226934114b4e90959b60a937cf7cf4a2713 Reviewed-on: http://ralgit01.raleigh.ibm.com/gerrit1/40113 Tested-by: Jenkins Server <pfd-jenkins+hostboot@us.ibm.com> Tested-by: FSP CI Jenkins <fsp-CI-jenkins+hostboot@us.ibm.com> Reviewed-by: Christian R. Geddes <crgeddes@us.ibm.com> Reviewed-by: Richard J. Knight <rjknight@us.ibm.com> Tested-by: Jenkins OP Build CI <op-jenkins+hostboot@us.ibm.com> Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Diffstat (limited to 'src/usr/fapi2')
-rw-r--r--src/usr/fapi2/plat_utils.C3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/usr/fapi2/plat_utils.C b/src/usr/fapi2/plat_utils.C
index b95f3c76f..efc23bdb1 100644
--- a/src/usr/fapi2/plat_utils.C
+++ b/src/usr/fapi2/plat_utils.C
@@ -982,6 +982,9 @@ void logError(
errlCommit(l_pError, HWPF_COMP_ID);
}
+ // error log is deleted so need to make sure nobody uses it again
+ io_rc.forgetData();
+
//error is committed, no current error
fapi2::current_err = fapi2::FAPI2_RC_SUCCESS;
return;
OpenPOWER on IntegriCloud