diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/usr/initservice/istepdispatcher/istepdispatcher.C | 19 |
1 files changed, 9 insertions, 10 deletions
diff --git a/src/usr/initservice/istepdispatcher/istepdispatcher.C b/src/usr/initservice/istepdispatcher/istepdispatcher.C index 15d1c3652..bd07e453e 100644 --- a/src/usr/initservice/istepdispatcher/istepdispatcher.C +++ b/src/usr/initservice/istepdispatcher/istepdispatcher.C @@ -837,16 +837,8 @@ void IStepDispatcher::msgHndlr() case SHUTDOWN: // Shutdown requested from Fsp TRACFCOMP(g_trac_initsvc, INFO_MRK"msgHndlr: SHUTDOWN"); - // If not in IStep mode, further process the shutdown message - // otherwise, ignore it - if (!iv_istepMode) - { - handleShutdownMsg(pMsg); - } - else - { - TRACFCOMP(g_trac_initsvc, ERR_MRK"msgHndlr: Ignoring shutdown msg in IStep mode!"); - } + // Further process the shutdown message + handleShutdownMsg(pMsg); break; default: TRACFCOMP(g_trac_initsvc, ERR_MRK"msgHndlr: Ignoring unknown message 0x%08x", @@ -1088,6 +1080,13 @@ void IStepDispatcher::handleShutdownMsg(msg_t * & io_pMsg) io_pMsg = NULL; } + if (iv_istepMode) + { + TRACFCOMP(g_trac_initsvc, INFO_MRK"ShutdownMsg received in istepMode," + " call shutdownDuringIPL() directly"); + shutdownDuringIpl(); + } + TRACFCOMP(g_trac_initsvc, EXIT_MRK"IStepDispatcher::handleShutdownMsg"); } |