[rtems commit] score: Add missing idle thread releases

Sebastian Huber sebh at rtems.org
Tue Nov 23 13:34:54 UTC 2021


Module:    rtems
Branch:    master
Commit:    e78709176456a57d82bac836c1cb5a2cabe63d22
Changeset: http://git.rtems.org/rtems/commit/?id=e78709176456a57d82bac836c1cb5a2cabe63d22

Author:    Sebastian Huber <sebastian.huber at embedded-brains.de>
Date:      Wed Oct 20 08:20:58 2021 +0200

score: Add missing idle thread releases

Update #4531.

---

 cpukit/include/rtems/score/schedulersmpimpl.h | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/cpukit/include/rtems/score/schedulersmpimpl.h b/cpukit/include/rtems/score/schedulersmpimpl.h
index a1a048d..944b4fc 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 );
 



More information about the vc mailing list