diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-10-29 13:44:04 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-11-23 11:00:28 +0100 |
commit | c6362f640a084b3972f9d80e029c607a5d5f52e3 (patch) | |
tree | c3d927821371994592e19004a5d6f01b490ff50c /cpukit/include/rtems/score/schedulerimpl.h | |
parent | score: Move _Scheduler_Block_node() (diff) | |
download | rtems-c6362f640a084b3972f9d80e029c607a5d5f52e3.tar.bz2 |
score: Move _Scheduler_Unblock_node()
Move _Scheduler_Unblock_node() into _Scheduler_SMP_Unblock(). This simplifies
the code and makes it easier to review.
Update #4531.
Diffstat (limited to 'cpukit/include/rtems/score/schedulerimpl.h')
-rw-r--r-- | cpukit/include/rtems/score/schedulerimpl.h | 42 |
1 files changed, 0 insertions, 42 deletions
diff --git a/cpukit/include/rtems/score/schedulerimpl.h b/cpukit/include/rtems/score/schedulerimpl.h index 0081b1904b..10dd039086 100644 --- a/cpukit/include/rtems/score/schedulerimpl.h +++ b/cpukit/include/rtems/score/schedulerimpl.h @@ -954,48 +954,6 @@ RTEMS_INLINE_ROUTINE void _Scheduler_Discard_idle_thread( _Thread_Set_CPU( the_thread, cpu ); _Thread_Dispatch_update_heir( _Per_CPU_Get(), cpu, the_thread ); } - -/** - * @brief Unblocks this scheduler node. - * - * @param context The scheduler instance context. - * @param[in, out] the_thread The thread which wants to get unblocked. - * @param[in, out] node The node which wants to get unblocked. - * @param is_scheduled This node is scheduled. - * @param release_idle_thread Function to release an idle thread. - * - * @retval true Continue with the unblocking operation. - * @retval false Do not continue with the unblocking operation. - */ -RTEMS_INLINE_ROUTINE bool _Scheduler_Unblock_node( - Thread_Control *the_thread, - Scheduler_Node *node, - bool is_scheduled, - Scheduler_Release_idle_node release_idle_node, - void *arg -) -{ - bool unblock; - - ++node->sticky_level; - _Assert( node->sticky_level > 0 ); - - if ( is_scheduled ) { - _Scheduler_Thread_change_state( the_thread, THREAD_SCHEDULER_SCHEDULED ); - _Scheduler_Discard_idle_thread( - the_thread, - node, - release_idle_node, - arg - ); - unblock = false; - } else { - _Scheduler_Thread_change_state( the_thread, THREAD_SCHEDULER_READY ); - unblock = true; - } - - return unblock; -} #endif /** |