summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2016-09-27 11:37:22 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2016-11-02 10:05:41 +0100
commit1c9688a9a11c08eabd6443d8bb9ccd439dce82e5 (patch)
tree2f4273586dfad3a141174e7d479f11196bced263
parentscore: Simplify _Scheduler_SMP_Node_change_state() (diff)
downloadrtems-1c9688a9a11c08eabd6443d8bb9ccd439dce82e5.tar.bz2
score: Add _Scheduler_Node_get_scheduler()
Update #2556.
-rw-r--r--cpukit/score/include/rtems/score/schedulernodeimpl.h8
-rw-r--r--cpukit/score/src/threadqops.c2
2 files changed, 9 insertions, 1 deletions
diff --git a/cpukit/score/include/rtems/score/schedulernodeimpl.h b/cpukit/score/include/rtems/score/schedulernodeimpl.h
index cf096aae13..f590131367 100644
--- a/cpukit/score/include/rtems/score/schedulernodeimpl.h
+++ b/cpukit/score/include/rtems/score/schedulernodeimpl.h
@@ -16,6 +16,7 @@
#define _RTEMS_SCORE_SCHEDULERNODEIMPL_H
#include <rtems/score/schedulernode.h>
+#include <rtems/score/priorityimpl.h>
struct Scheduler_Control;
@@ -55,6 +56,13 @@ RTEMS_INLINE_ROUTINE void _Scheduler_Node_do_initialize(
#endif
}
+RTEMS_INLINE_ROUTINE const Scheduler_Control *_Scheduler_Node_get_scheduler(
+ const Scheduler_Node *node
+)
+{
+ return _Priority_Get_scheduler( &node->Wait.Priority );
+}
+
RTEMS_INLINE_ROUTINE Thread_Control *_Scheduler_Node_get_owner(
const Scheduler_Node *node
)
diff --git a/cpukit/score/src/threadqops.c b/cpukit/score/src/threadqops.c
index 8652025a46..c0e0f67977 100644
--- a/cpukit/score/src/threadqops.c
+++ b/cpukit/score/src/threadqops.c
@@ -263,7 +263,7 @@ static size_t _Thread_queue_Scheduler_index(
#if defined(RTEMS_SMP)
const Scheduler_Control *scheduler;
- scheduler = _Priority_Get_scheduler( &scheduler_node->Wait.Priority );
+ scheduler = _Scheduler_Node_get_scheduler( scheduler_node );
return _Scheduler_Get_index( scheduler );
#else
(void) scheduler_node;