diff options
author | Manali Kumar <mkkumar@us.ibm.com> | 2015-11-06 16:16:33 -0600 |
---|---|---|
committer | A. Patrick Williams III <iawillia@us.ibm.com> | 2015-12-08 10:28:34 -0600 |
commit | cae9a269ac8a84a216543e4323fddddd868d7d01 (patch) | |
tree | fb86ff3b8c5ce1ae915f32a0faccf83e9dbfc03c /src/usr | |
parent | 1fbe5e7bf5042ee9e7353a169d13eec54c270f04 (diff) | |
download | talos-hostboot-cae9a269ac8a84a216543e4323fddddd868d7d01.tar.gz talos-hostboot-cae9a269ac8a84a216543e4323fddddd868d7d01.zip |
indicate eSels from a previous boot
Additional user detail section added to pel data after hardware
and procedure callout sections to indicate eSel is from a previous
boot.
Change-Id: I9b66ac9e45507767ae4ba372881d3d52c6243ef0
RTC:137645
Reviewed-on: http://gfw160.aus.stglabs.ibm.com:8080/gerrit/21885
Tested-by: Jenkins Server
Tested-by: Jenkins OP Build CI
Tested-by: Jenkins OP HW
Tested-by: FSP CI Jenkins
Reviewed-by: Daniel M. Crowell <dcrowell@us.ibm.com>
Reviewed-by: Jay M. Azurin <jmazurin@us.ibm.com>
Reviewed-by: Richard J. Knight <rjknight@us.ibm.com>
Reviewed-by: A. Patrick Williams III <iawillia@us.ibm.com>
Diffstat (limited to 'src/usr')
-rw-r--r-- | src/usr/errl/errlmanager_common.C | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/src/usr/errl/errlmanager_common.C b/src/usr/errl/errlmanager_common.C index 3668e20ba..7006fb2bd 100644 --- a/src/usr/errl/errlmanager_common.C +++ b/src/usr/errl/errlmanager_common.C @@ -28,10 +28,10 @@ #include <errl/errlreasoncodes.H> #include <ipmi/ipmisel.H> #include <ipmi/ipmisensor.H> - +#include <errl/errlentry.H> #include <sys/mm.h> #include <pnor/pnorif.H> - +#include <errl/errludstring.H> namespace ERRORLOG { @@ -557,6 +557,20 @@ void ErrlManager::sendErrLogToBmc(errlHndl_t &io_err, bool i_sendSels) } // for each SectionVector } // if i_sendSels + //Add additional user detail section to pel data after hw and procedure + //callouts to indicate esels from a previous boot. + if(!i_sendSels) + { + const char* l_prev_boot = "Error from a previous boot"; + ERRORLOG::ErrlUserDetailsString(l_prev_boot).addToLog(io_err); + io_err->iv_SectionVector.insert(io_err->iv_SectionVector.begin(), + 1,io_err->iv_SectionVector.back()); + if(io_err->iv_SectionVector.size()!=0) + { + io_err->iv_SectionVector.pop_back(); + } + } + // flatten into buffer, truncate to max eSEL size uint32_t l_pelSize = io_err->flattenedSize(); if (l_pelSize > (IPMISEL::ESEL_MAX_SIZE - sizeof(IPMISEL::selRecord))) |