summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2017-12-21 14:59:54 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2018-01-19 07:45:21 +0100
commita5b4db4bc250a1beb06da16b3003ae1608c611d4 (patch)
treec8778214eaa19edce9ca1fdfb0f03e59e5ef91ca
parentbsp/leon3: Fix interrupt timestamp timecounter (diff)
downloadrtems-a5b4db4bc250a1beb06da16b3003ae1608c611d4.tar.bz2
rtems: Fix rtems_task_mode()
A rtems_configuration_is_smp_enabled() inside a !defined( RTEMS_SMP) block makes no sense. Remove !defined( RTEMS_SMP ) conditions. Test tm04 works now again. Update #3000.
-rw-r--r--cpukit/rtems/src/taskmode.c8
1 files changed, 0 insertions, 8 deletions
diff --git a/cpukit/rtems/src/taskmode.c b/cpukit/rtems/src/taskmode.c
index 91b16a565e..f25746e492 100644
--- a/cpukit/rtems/src/taskmode.c
+++ b/cpukit/rtems/src/taskmode.c
@@ -88,18 +88,12 @@ rtems_status_code rtems_task_mode(
* These are generic thread scheduling characteristics.
*/
preempt_enabled = false;
-#if !defined( RTEMS_SMP )
if ( mask & RTEMS_PREEMPT_MASK ) {
- if ( rtems_configuration_is_smp_enabled() &&
- !_Modes_Is_preempt( mode_set ) ) {
- return RTEMS_NOT_IMPLEMENTED;
- }
bool is_preempt_enabled = _Modes_Is_preempt( mode_set );
preempt_enabled = !executing->is_preemptible && is_preempt_enabled;
executing->is_preemptible = is_preempt_enabled;
}
-#endif
if ( mask & RTEMS_TIMESLICE_MASK ) {
if ( _Modes_Is_timeslice(mode_set) ) {
@@ -113,11 +107,9 @@ rtems_status_code rtems_task_mode(
/*
* Set the new interrupt level
*/
-#if !defined( RTEMS_SMP )
if ( mask & RTEMS_INTERRUPT_MASK ) {
_Modes_Set_interrupt_level( mode_set );
}
-#endif
/*
* This is specific to the RTEMS API