summaryrefslogtreecommitdiffstats
path: root/cpukit/include/rtems/score/schedulernodeimpl.h
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2021-10-18 09:05:30 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2021-11-23 11:00:28 +0100
commit45e942d1ae7f0ffe7f0540daf45c7c48850b05bc (patch)
tree4ea8bc5a2d9ab1f9fdbf82cdf47eefd9861db639 /cpukit/include/rtems/score/schedulernodeimpl.h
parentscore: Add red-black tree append/prepend (diff)
downloadrtems-45e942d1ae7f0ffe7f0540daf45c7c48850b05bc.tar.bz2
score: Rename _Scheduler_Set_idle_thread()
Rename _Scheduler_Set_idle_thread() in _Scheduler_Node_set_idle_user() and move it to <rtems/score/schedulernodeimpl.h>. Update #4531.
Diffstat (limited to '')
-rw-r--r--cpukit/include/rtems/score/schedulernodeimpl.h21
1 files changed, 21 insertions, 0 deletions
diff --git a/cpukit/include/rtems/score/schedulernodeimpl.h b/cpukit/include/rtems/score/schedulernodeimpl.h
index e222de953b..ecdc3c6d62 100644
--- a/cpukit/include/rtems/score/schedulernodeimpl.h
+++ b/cpukit/include/rtems/score/schedulernodeimpl.h
@@ -264,6 +264,27 @@ RTEMS_INLINE_ROUTINE Thread_Control *_Scheduler_Node_get_idle(
{
return node->idle;
}
+
+/**
+ * @brief Sets the scheduler node's user to the idle thread.
+ *
+ * @param[in, out] node is the node to receive an idle thread.
+ *
+ * @param idle is the idle thread to use.
+ */
+RTEMS_INLINE_ROUTINE void _Scheduler_Node_set_idle_user(
+ Scheduler_Node *node,
+ Thread_Control *idle
+)
+{
+ _Assert( _Scheduler_Node_get_idle( node ) == NULL );
+ _Assert(
+ _Scheduler_Node_get_owner( node ) == _Scheduler_Node_get_user( node )
+ );
+
+ _Scheduler_Node_set_user( node, idle );
+ node->idle = idle;
+}
#endif
#ifdef __cplusplus