diff options
Diffstat (limited to 'cpukit')
-rw-r--r-- | cpukit/score/include/rtems/score/threaddispatch.h | 9 | ||||
-rw-r--r-- | cpukit/score/src/threadenabledispatch.c | 4 |
2 files changed, 8 insertions, 5 deletions
diff --git a/cpukit/score/include/rtems/score/threaddispatch.h b/cpukit/score/include/rtems/score/threaddispatch.h index 7d25aedc72..aec436fb45 100644 --- a/cpukit/score/include/rtems/score/threaddispatch.h +++ b/cpukit/score/include/rtems/score/threaddispatch.h @@ -226,6 +226,12 @@ RTEMS_INLINE_ROUTINE void _Thread_Disable_dispatch( void ) } #endif +RTEMS_INLINE_ROUTINE void _Thread_Enable_dispatch_body( void ) +{ + if ( _Thread_Dispatch_decrement_disable_level() == 0 ) + _Thread_Dispatch(); +} + /** * This routine allows dispatching to occur again. If this is * the outer most dispatching critical section, then a dispatching @@ -240,8 +246,7 @@ RTEMS_INLINE_ROUTINE void _Thread_Disable_dispatch( void ) RTEMS_INLINE_ROUTINE void _Thread_Enable_dispatch( void ) { RTEMS_COMPILER_MEMORY_BARRIER(); - if ( _Thread_Dispatch_decrement_disable_level() == 0 ) - _Thread_Dispatch(); + _Thread_Enable_dispatch_body(); } #endif diff --git a/cpukit/score/src/threadenabledispatch.c b/cpukit/score/src/threadenabledispatch.c index 541195311a..baf58a06d2 100644 --- a/cpukit/score/src/threadenabledispatch.c +++ b/cpukit/score/src/threadenabledispatch.c @@ -27,8 +27,6 @@ #if defined (__THREAD_DO_NOT_INLINE_ENABLE_DISPATCH__ ) void _Thread_Enable_dispatch( void ) { - if ( _Thread_Dispatch_decrement_disable_level() ) - return; - _Thread_Dispatch(); + _Thread_Enable_dispatch_body(); } #endif |