From 537f00ebe83370b8336361b8ae34d4a71e7023bb Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Thu, 10 Nov 2016 16:25:41 +0100 Subject: score: Restrict task interrupt level to 0 on SMP Update #2811. --- cpukit/score/src/threadinitialize.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) (limited to 'cpukit/score/src/threadinitialize.c') diff --git a/cpukit/score/src/threadinitialize.c b/cpukit/score/src/threadinitialize.c index 2cbe13854c..9ae2acb9a0 100644 --- a/cpukit/score/src/threadinitialize.c +++ b/cpukit/score/src/threadinitialize.c @@ -60,8 +60,14 @@ bool _Thread_Initialize( Per_CPU_Control *cpu = _Per_CPU_Get_by_index( 0 ); #if defined( RTEMS_SMP ) - if ( rtems_configuration_is_smp_enabled() && !is_preemptible ) { - return false; + if ( rtems_configuration_is_smp_enabled() ) { + if ( !is_preemptible ) { + return false; + } + + if ( isr_level != 0 ) { + return false; + } } #endif -- cgit v1.2.3