diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-10-19 11:21:49 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-11-23 11:00:28 +0100 |
commit | f0f60a1ec3758c9fd2a92f854fef326d081a9bcc (patch) | |
tree | dc901f67b0c7d48a595f362ccb1f71acfe26c354 /cpukit/include | |
parent | score: Not set CPU in _Scheduler_Use_idle_thread() (diff) | |
download | rtems-f0f60a1ec3758c9fd2a92f854fef326d081a9bcc.tar.bz2 |
score: Change _Scheduler_Try_to_schedule_node()
Add the victim node as parameter instead of the idle thread.
Update #4531.
Diffstat (limited to 'cpukit/include')
-rw-r--r-- | cpukit/include/rtems/score/schedulerimpl.h | 4 | ||||
-rw-r--r-- | cpukit/include/rtems/score/schedulersmpimpl.h | 8 |
2 files changed, 6 insertions, 6 deletions
diff --git a/cpukit/include/rtems/score/schedulerimpl.h b/cpukit/include/rtems/score/schedulerimpl.h index ec51b6d097..1e83f75891 100644 --- a/cpukit/include/rtems/score/schedulerimpl.h +++ b/cpukit/include/rtems/score/schedulerimpl.h @@ -969,7 +969,7 @@ RTEMS_INLINE_ROUTINE Scheduler_Try_to_schedule_action _Scheduler_Try_to_schedule_node( Scheduler_Context *context, Scheduler_Node *node, - const Thread_Control *idle, + Scheduler_Node *victim, Scheduler_Get_idle_thread get_idle_thread ) { @@ -994,7 +994,7 @@ _Scheduler_Try_to_schedule_node( action = SCHEDULER_TRY_TO_SCHEDULE_DO_BLOCK; } else if ( node->sticky_level == 0 ) { action = SCHEDULER_TRY_TO_SCHEDULE_DO_BLOCK; - } else if ( idle != NULL ) { + } else if ( _Scheduler_Node_get_idle( victim ) != NULL ) { action = SCHEDULER_TRY_TO_SCHEDULE_DO_IDLE_EXCHANGE; } else { Thread_Control *idle; diff --git a/cpukit/include/rtems/score/schedulersmpimpl.h b/cpukit/include/rtems/score/schedulersmpimpl.h index dd0551972c..f4ee72696f 100644 --- a/cpukit/include/rtems/score/schedulersmpimpl.h +++ b/cpukit/include/rtems/score/schedulersmpimpl.h @@ -810,7 +810,7 @@ static inline void _Scheduler_SMP_Enqueue_to_scheduled( action = _Scheduler_Try_to_schedule_node( context, node, - _Scheduler_Node_get_idle( lowest_scheduled ), + lowest_scheduled, _Scheduler_SMP_Get_idle_thread ); @@ -987,7 +987,7 @@ static inline bool _Scheduler_SMP_Enqueue_scheduled( action = _Scheduler_Try_to_schedule_node( context, highest_ready, - _Scheduler_Node_get_idle( node ), + node, _Scheduler_SMP_Get_idle_thread ); @@ -1086,7 +1086,7 @@ static inline void _Scheduler_SMP_Schedule_highest_ready( action = _Scheduler_Try_to_schedule_node( context, highest_ready, - NULL, + victim, _Scheduler_SMP_Get_idle_thread ); @@ -1145,7 +1145,7 @@ static inline void _Scheduler_SMP_Preempt_and_schedule_highest_ready( action = _Scheduler_Try_to_schedule_node( context, highest_ready, - NULL, + victim, _Scheduler_SMP_Get_idle_thread ); |