diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2015-09-03 10:27:16 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2015-09-04 13:26:17 +0200 |
commit | dafa5d88435853809040761b79ab9d8f2217281b (patch) | |
tree | 35d9d87cbe8d00279cc3fa905792569937ed7fea /cpukit/score/include/rtems/score/threadqimpl.h | |
parent | score: Implement SMP-specific priority queue (diff) | |
download | rtems-dafa5d88435853809040761b79ab9d8f2217281b.tar.bz2 |
score: Implement priority boosting
Diffstat (limited to '')
-rw-r--r-- | cpukit/score/include/rtems/score/threadqimpl.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/cpukit/score/include/rtems/score/threadqimpl.h b/cpukit/score/include/rtems/score/threadqimpl.h index bf01eb7404..510f886844 100644 --- a/cpukit/score/include/rtems/score/threadqimpl.h +++ b/cpukit/score/include/rtems/score/threadqimpl.h @@ -522,6 +522,31 @@ RTEMS_INLINE_ROUTINE void _Thread_queue_Destroy( } /** + * @brief Boosts the priority of the thread if threads of another scheduler + * instance are enqueued on the thread queue. + * + * The thread queue must use the priority waiting discipline. + * + * @param[in] queue The actual thread queue. + * @param[in] the_thread The thread to boost the priority if necessary. + */ +#if defined(RTEMS_SMP) +void _Thread_queue_Boost_priority( + Thread_queue_Queue *queue, + Thread_Control *the_thread +); +#else +RTEMS_INLINE_ROUTINE void _Thread_queue_Boost_priority( + Thread_queue_Queue *queue, + Thread_Control *the_thread +) +{ + (void) queue; + (void) the_thread; +} +#endif + +/** * @brief Compare two thread's priority for RBTree Insertion. * * @param[in] left points to the left thread's RBnode |