diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2019-01-08 08:39:42 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2019-01-09 10:35:31 +0100 |
commit | 1f2851867535aa24edfd8574b520f1b3ec22efc0 (patch) | |
tree | 99785719d8524f5054e92058ad0196fdd89b8540 | |
parent | 38cb59ee0b8f3b55ad3277bbf24b5fd1caa88603 (diff) |
rtems: Allow to set ISR level 0 in SMP config
Update #3000.
-rw-r--r-- | cpukit/rtems/src/taskmode.c | 1 | ||||
-rw-r--r-- | testsuites/smptests/smpunsupported01/init.c | 2 |
2 files changed, 2 insertions, 1 deletions
diff --git a/cpukit/rtems/src/taskmode.c b/cpukit/rtems/src/taskmode.c index 3e7ebe9d20..1767d7be84 100644 --- a/cpukit/rtems/src/taskmode.c +++ b/cpukit/rtems/src/taskmode.c @@ -56,6 +56,7 @@ rtems_status_code rtems_task_mode( #if defined(RTEMS_SMP) if ( ( mask & RTEMS_INTERRUPT_MASK ) != 0 + && _Modes_Get_interrupt_level( mode_set ) != 0 && rtems_configuration_is_smp_enabled() ) { return RTEMS_NOT_IMPLEMENTED; diff --git a/testsuites/smptests/smpunsupported01/init.c b/testsuites/smptests/smpunsupported01/init.c index ae85b2fc89..dd9b52a3c5 100644 --- a/testsuites/smptests/smpunsupported01/init.c +++ b/testsuites/smptests/smpunsupported01/init.c @@ -45,7 +45,7 @@ static void test(void) mode = RTEMS_INTERRUPT_LEVEL(0); if (mode == 0) { sc = rtems_task_mode(mode, RTEMS_INTERRUPT_MASK, &mode); - rtems_test_assert(sc == RTEMS_NOT_IMPLEMENTED); + rtems_test_assert(sc == RTEMS_SUCCESSFUL); } mode = RTEMS_INTERRUPT_LEVEL(1); |