diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-10-20 08:20:58 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2021-11-23 11:00:28 +0100 |
commit | e78709176456a57d82bac836c1cb5a2cabe63d22 (patch) | |
tree | 912cfbafdf30efc8d560d568b92cb5bc4a3ccf5a /cpukit/include | |
parent | score: Simplify _Scheduler_Exchange_idle_thread() (diff) | |
download | rtems-e78709176456a57d82bac836c1cb5a2cabe63d22.tar.bz2 |
score: Add missing idle thread releases
Update #4531.
Diffstat (limited to 'cpukit/include')
-rw-r--r-- | cpukit/include/rtems/score/schedulersmpimpl.h | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/cpukit/include/rtems/score/schedulersmpimpl.h b/cpukit/include/rtems/score/schedulersmpimpl.h index a1a048d4ed..944b4fc976 100644 --- a/cpukit/include/rtems/score/schedulersmpimpl.h +++ b/cpukit/include/rtems/score/schedulersmpimpl.h @@ -1092,6 +1092,12 @@ static inline void _Scheduler_SMP_Schedule_highest_ready( ); ( *move_from_ready_to_scheduled )( context, highest_ready ); + + _Scheduler_Release_idle_thread( + context, + victim, + _Scheduler_SMP_Release_idle_thread + ); } else { _Assert( action == SCHEDULER_TRY_TO_SCHEDULE_DO_BLOCK ); @@ -1150,6 +1156,12 @@ static inline void _Scheduler_SMP_Preempt_and_schedule_highest_ready( ); ( *move_from_ready_to_scheduled )( context, highest_ready ); + + _Scheduler_Release_idle_thread( + context, + victim, + _Scheduler_SMP_Release_idle_thread + ); } else { _Assert( action == SCHEDULER_TRY_TO_SCHEDULE_DO_BLOCK ); |