From 6f6cf78501d8d953983dfc68d5ec83f78856be92 Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Tue, 5 Jul 2016 09:04:15 +0200 Subject: score: Postpone SMP shutdown in _Terminate() This enables fatal extensions to continue program execution after some fatal errors. --- cpukit/score/src/interr.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'cpukit/score/src/interr.c') diff --git a/cpukit/score/src/interr.c b/cpukit/score/src/interr.c index 526023f5ba..8740027617 100644 --- a/cpukit/score/src/interr.c +++ b/cpukit/score/src/interr.c @@ -33,8 +33,6 @@ void _Terminate( Internal_errors_t the_error ) { - _SMP_Request_shutdown(); - _User_extensions_Fatal( the_source, is_internal, the_error ); _Internal_errors_What_happened.the_source = the_source; @@ -43,6 +41,8 @@ void _Terminate( _System_state_Set( SYSTEM_STATE_TERMINATED ); + _SMP_Request_shutdown(); + _CPU_Fatal_halt( the_source, the_error ); /* will not return from this routine */ -- cgit v1.2.3