summaryrefslogtreecommitdiffstats
path: root/src/usr/errl
diff options
context:
space:
mode:
Diffstat (limited to 'src/usr/errl')
-rw-r--r--src/usr/errl/errlentry.C6
-rw-r--r--src/usr/errl/errlmanager.C10
2 files changed, 13 insertions, 3 deletions
diff --git a/src/usr/errl/errlentry.C b/src/usr/errl/errlentry.C
index 972c8b272..c05d10d1d 100644
--- a/src/usr/errl/errlentry.C
+++ b/src/usr/errl/errlentry.C
@@ -79,7 +79,8 @@ ErrlEntry::ErrlEntry(const errlSeverity_t i_sev,
const uint16_t i_reasonCode,
const uint64_t i_user1,
const uint64_t i_user2,
- const bool i_hbSwError ) :
+ const bool i_hbSwError,
+ const bool i_hbDump ) :
iv_Private( static_cast<compId_t>(i_reasonCode & 0xFF00)),
iv_User( i_sev ),
// The SRC_ERR_INFO becomes part of the SRC; example, B1 in SRC B180xxxx
@@ -88,7 +89,8 @@ ErrlEntry::ErrlEntry(const errlSeverity_t i_sev,
iv_termState(TERM_STATE_UNKNOWN),
iv_sevFinal(false),
iv_skipShowingLog(true),
- iv_eselCallhomeInfoEvent(false)
+ iv_eselCallhomeInfoEvent(false),
+ iv_doHbDump(i_hbDump)
{
#ifdef CONFIG_ERRL_ENTRY_TRACE
TRACFCOMP( g_trac_errl, ERR_MRK"Error created : PLID=%.8X, RC=%.4X, Mod=%.2X, Userdata=%.16llX %.16llX", plid(), i_reasonCode, i_modId, i_user1, i_user2 );
diff --git a/src/usr/errl/errlmanager.C b/src/usr/errl/errlmanager.C
index 724c03a63..24008e7ea 100644
--- a/src/usr/errl/errlmanager.C
+++ b/src/usr/errl/errlmanager.C
@@ -53,6 +53,7 @@
#include <config.h>
#include <functional>
#include <hwas/common/deconfigGard.H>
+#include <kernel/terminate.H>
namespace ERRORLOG
{
@@ -193,7 +194,7 @@ ErrlManager::~ErrlManager()
// Singleton destructor gets run when module gets unloaded.
// This errorlog module never gets unloaded. So rather to send a
- // message to error log daemon and tell it to shutdow and delete
+ // message to error log daemon and tell it to shutdown and delete
// the queue we will assert here because the destructor never gets
// call.
assert(0);
@@ -736,6 +737,13 @@ void ErrlManager::commitErrLog(errlHndl_t& io_err, compId_t i_committerComp )
//Ask ErrlEntry to check for any special deferred deconfigure callouts
io_err->deferredDeconfigure();
+ // Is error flagged for doing HB Dump during a shutdown / TI?
+ if (io_err->getDoHbDump() == true)
+ {
+ // Then set flag in TI data
+ termSetHbDump();
+ }
+
//Offload the error log to the errlog message queue
sendErrlogToMessageQueue ( io_err, i_committerComp );
io_err = NULL;
OpenPOWER on IntegriCloud