summaryrefslogtreecommitdiffstats
path: root/src/usr/errl/errlmanager_common.C
diff options
context:
space:
mode:
authorManali Kumar <mkkumar@us.ibm.com>2015-11-06 16:16:33 -0600
committerA. Patrick Williams III <iawillia@us.ibm.com>2015-12-08 10:28:34 -0600
commitcae9a269ac8a84a216543e4323fddddd868d7d01 (patch)
treefb86ff3b8c5ce1ae915f32a0faccf83e9dbfc03c /src/usr/errl/errlmanager_common.C
parent1fbe5e7bf5042ee9e7353a169d13eec54c270f04 (diff)
downloadtalos-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/errl/errlmanager_common.C')
-rw-r--r--src/usr/errl/errlmanager_common.C18
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)))
OpenPOWER on IntegriCloud