summaryrefslogtreecommitdiffstats
path: root/cpukit/score/include/rtems/score/threadimpl.h
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2016-03-21 15:01:57 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2016-03-22 07:05:05 +0100
commit90960bd11a91259d9aace3870692dbe2e227de0f (patch)
tree3d88f8bc3d1fe17252e8290cadae2afb4a38ce4b /cpukit/score/include/rtems/score/threadimpl.h
parentrtems: Avoid __RTEMS_USE_TICKS_FOR_STATISTICS__ (diff)
downloadrtems-90960bd11a91259d9aace3870692dbe2e227de0f.tar.bz2
rtems: Rework rate-monotonic scheduler
Use the default thread lock to protect rate-monotonic state changes. This avoids use of the Giant lock. Split rtems_rate_monotonic_period() body into several static functions. Introduce a new thread wait class THREAD_WAIT_CLASS_PERIOD for period objects to synchronize the blocking operation. Close #2631.
Diffstat (limited to 'cpukit/score/include/rtems/score/threadimpl.h')
-rw-r--r--cpukit/score/include/rtems/score/threadimpl.h7
1 files changed, 6 insertions, 1 deletions
diff --git a/cpukit/score/include/rtems/score/threadimpl.h b/cpukit/score/include/rtems/score/threadimpl.h
index 37ac5964be..55fdb224da 100644
--- a/cpukit/score/include/rtems/score/threadimpl.h
+++ b/cpukit/score/include/rtems/score/threadimpl.h
@@ -1280,10 +1280,15 @@ RTEMS_INLINE_ROUTINE void _Thread_Lock_restore_default(
#define THREAD_WAIT_CLASS_SYSTEM_EVENT 0x200U
/**
- * @brief Indicates that the thread waits for a object.
+ * @brief Indicates that the thread waits for an object.
*/
#define THREAD_WAIT_CLASS_OBJECT 0x400U
+/**
+ * @brief Indicates that the thread waits for a period.
+ */
+#define THREAD_WAIT_CLASS_PERIOD 0x800U
+
RTEMS_INLINE_ROUTINE void _Thread_Wait_flags_set(
Thread_Control *the_thread,
Thread_Wait_flags flags