diff options
Diffstat (limited to 'src/usr/errl/runtime/rt_errlmanager.C')
| -rw-r--r-- | src/usr/errl/runtime/rt_errlmanager.C | 25 |
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; + |

