summaryrefslogtreecommitdiffstats
path: root/src/usr/errl/runtime
diff options
context:
space:
mode:
Diffstat (limited to 'src/usr/errl/runtime')
-rw-r--r--src/usr/errl/runtime/rt_errlmanager.C10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/usr/errl/runtime/rt_errlmanager.C b/src/usr/errl/runtime/rt_errlmanager.C
index 1435401d6..9fb624608 100644
--- a/src/usr/errl/runtime/rt_errlmanager.C
+++ b/src/usr/errl/runtime/rt_errlmanager.C
@@ -101,6 +101,7 @@ ErrlManager::ErrlManager() :
if(sys)
{
iv_currLogId = sys->getAttr<TARGETING::ATTR_HOSTSVC_PLID>();
+ TRACFCOMP( g_trac_errl,"Initial Error Log ID = %.8X", iv_currLogId );
// set whether we want to skip certain error logs or not.
iv_hiddenErrLogsEnable =
@@ -304,6 +305,15 @@ void ErrlManager::commitErrLog(errlHndl_t& io_err, compId_t i_committerComp )
break;
}
+ // Increment our persistent counter so we don't reuse EIDs
+ // after reboots or mpipl
+ TARGETING::Target * sys = NULL;
+ if( TARGETING::targetService().isInitialized() )
+ {
+ TARGETING::targetService().getTopLevelTarget( sys );
+ sys->setAttr<TARGETING::ATTR_HOSTSVC_PLID>(io_err->eid()+1);
+ }
+
TRACFCOMP(g_trac_errl, "commitErrLog() called by %.4X for plid=0x%X,"
"Reasoncode=%.4X", i_committerComp,
io_err->plid(), io_err->reasonCode() );
OpenPOWER on IntegriCloud