summaryrefslogtreecommitdiffstats
path: root/cpukit/score/include/rtems/score/schedulersimplesmp.h
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2014-06-10 16:13:37 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2014-06-23 09:53:59 +0200
commit8f0c7a46ed1edc5b2489bfd248942d6918836e3f (patch)
tree3ceb6d5a1c3133fc4412da974b13f2f92ff8e90d /cpukit/score/include/rtems/score/schedulersimplesmp.h
parentscore: Use chain nodes for ready queue support (diff)
downloadrtems-8f0c7a46ed1edc5b2489bfd248942d6918836e3f.tar.bz2
score: Decouple thread and scheduler nodes on SMP
Add a chain node to the scheduler node to decouple the thread and scheduler nodes. It is now possible to enqueue a thread in a thread wait queue and use its scheduler node at the same for other threads, e.g. a resouce owner.
Diffstat (limited to 'cpukit/score/include/rtems/score/schedulersimplesmp.h')
-rw-r--r--cpukit/score/include/rtems/score/schedulersimplesmp.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/cpukit/score/include/rtems/score/schedulersimplesmp.h b/cpukit/score/include/rtems/score/schedulersimplesmp.h
index 29c1b3a41e..790ceddc1d 100644
--- a/cpukit/score/include/rtems/score/schedulersimplesmp.h
+++ b/cpukit/score/include/rtems/score/schedulersimplesmp.h
@@ -67,7 +67,7 @@ typedef struct {
_Scheduler_simple_SMP_Change_priority, \
_Scheduler_simple_SMP_Node_initialize, \
_Scheduler_default_Node_destroy, \
- _Scheduler_default_Update_priority, \
+ _Scheduler_simple_SMP_Update_priority, \
_Scheduler_priority_Priority_compare, \
_Scheduler_default_Release_job, \
_Scheduler_default_Tick, \
@@ -99,6 +99,12 @@ void _Scheduler_simple_SMP_Change_priority(
bool prepend_it
);
+void _Scheduler_simple_SMP_Update_priority(
+ const Scheduler_Control *scheduler,
+ Thread_Control *thread,
+ Priority_Control new_priority
+);
+
void _Scheduler_simple_SMP_Yield(
const Scheduler_Control *scheduler,
Thread_Control *thread