summaryrefslogtreecommitdiffstats
path: root/cpukit/score/include/rtems/score/threadq.h
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2016-09-09 11:00:06 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2016-09-21 08:59:33 +0200
commitf6142c19f192e40ee1aa9ff67eb1c711343c157d (patch)
tree061086bf693d934063cdd601498e0e138e72eeb7 /cpukit/score/include/rtems/score/threadq.h
parentrtems: Add rtems_task_get_priority() (diff)
downloadrtems-f6142c19f192e40ee1aa9ff67eb1c711343c157d.tar.bz2
score: Scheduler node awareness for thread queues
Maintain the priority of a thread for each scheduler instance via the thread queue enqueue, extract, priority actions and surrender operations. This replaces the primitive priority boosting. Update #2556.
Diffstat (limited to 'cpukit/score/include/rtems/score/threadq.h')
-rw-r--r--cpukit/score/include/rtems/score/threadq.h11
1 files changed, 6 insertions, 5 deletions
diff --git a/cpukit/score/include/rtems/score/threadq.h b/cpukit/score/include/rtems/score/threadq.h
index 6f62506c26..084161cc4d 100644
--- a/cpukit/score/include/rtems/score/threadq.h
+++ b/cpukit/score/include/rtems/score/threadq.h
@@ -216,6 +216,12 @@ typedef struct {
* @brief The start of a thread queue path.
*/
Thread_queue_Link Start;
+
+ /**
+ * @brief In case of a deadlock, a link for the first thread on the path
+ * that tries to enqueue on a thread queue.
+ */
+ Thread_queue_Link Deadlock;
} Path;
#endif
@@ -345,11 +351,6 @@ typedef struct _Thread_queue_Heads {
#if defined(RTEMS_SMP)
/**
- * @brief Boost priority.
- */
- Priority_Node Boost_priority;
-
- /**
* @brief One priority queue per scheduler instance.
*/
Thread_queue_Priority_queue Priority[ RTEMS_ZERO_LENGTH_ARRAY ];