summaryrefslogtreecommitdiffstats
path: root/src/usr/errl/runtime/rt_errlmanager.C
diff options
context:
space:
mode:
Diffstat (limited to 'src/usr/errl/runtime/rt_errlmanager.C')
-rw-r--r--src/usr/errl/runtime/rt_errlmanager.C25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/usr/errl/runtime/rt_errlmanager.C b/src/usr/errl/runtime/rt_errlmanager.C
index 10b521a32..62eabc263 100644
--- a/src/usr/errl/runtime/rt_errlmanager.C
+++ b/src/usr/errl/runtime/rt_errlmanager.C
@@ -46,6 +46,8 @@ uint8_t ErrlManager::iv_hiddenErrLogsEnable =
extern trace_desc_t* g_trac_errl;
+
+
//////////////////////////////////////////////////////////////////////////////
// Local functions
//////////////////////////////////////////////////////////////////////////////
@@ -380,3 +382,26 @@ bool rt_processCallout(errlHndl_t &io_errl,
}
} // End namespace
+
+
+//------------------------------------------------------------------------
+void initErrlManager(void)
+{
+ // Note: rtPnor needs to be setup before this is called
+ // call errlManager ctor so that we're ready and waiting for errors.
+ ERRORLOG::theErrlManager::instance();
+}
+
+
+struct registerInitErrlManager
+{
+ registerInitErrlManager()
+ {
+ // Register interface for Host to call
+ postInitCalls_t * rt_post = getPostInitCalls();
+ rt_post->callInitErrlManager = &initErrlManager;
+ }
+};
+
+registerInitErrlManager g_registerInitErrlManager;
+
OpenPOWER on IntegriCloud