summaryrefslogtreecommitdiffstats
path: root/cpukit/score/include/rtems/score/schedulerimpl.h
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2016-09-08 14:07:12 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2016-09-21 08:59:32 +0200
commit266d3835d883f908c0e4cbf547359d683f72dcc4 (patch)
treeab1cfe81a9574d984d39c1d27d88d3032c31a594 /cpukit/score/include/rtems/score/schedulerimpl.h
parentscore: Add scheduler node table for each thread (diff)
downloadrtems-266d3835d883f908c0e4cbf547359d683f72dcc4.tar.bz2
score: Manage scheduler nodes via thread queues
Update #2556.
Diffstat (limited to 'cpukit/score/include/rtems/score/schedulerimpl.h')
-rw-r--r--cpukit/score/include/rtems/score/schedulerimpl.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/cpukit/score/include/rtems/score/schedulerimpl.h b/cpukit/score/include/rtems/score/schedulerimpl.h
index 2fdc01a695..7ac8964909 100644
--- a/cpukit/score/include/rtems/score/schedulerimpl.h
+++ b/cpukit/score/include/rtems/score/schedulerimpl.h
@@ -1423,6 +1423,13 @@ RTEMS_INLINE_ROUTINE Status_Control _Scheduler_Set(
);
#if defined(RTEMS_SMP)
+ _Chain_Extract_unprotected( &old_scheduler_node->Thread.Wait_node );
+ _Assert( _Chain_Is_empty( &the_thread->Scheduler.Wait_nodes ) );
+ _Chain_Initialize_one(
+ &the_thread->Scheduler.Wait_nodes,
+ &new_scheduler_node->Thread.Wait_node
+ );
+
{
const Scheduler_Control *old_scheduler;