summaryrefslogtreecommitdiffstats
path: root/cpukit/score/src/coremutex.c
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2016-04-15 21:18:26 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2016-04-21 07:29:39 +0200
commitadbedd10cfe5259018b1682d903ab40f6005b3f0 (patch)
treedde02dde8c5760625667a949661f0bfab266e0dc /cpukit/score/src/coremutex.c
parentposix: Avoid Giant lock for mutexes (diff)
downloadrtems-adbedd10cfe5259018b1682d903ab40f6005b3f0.tar.bz2
score: Introduce _Thread_queue_Flush_critical()
Replace _Thread_queue_Flush() with _Thread_queue_Flush_critical() and add a filter function for customization of the thread queue flush operation. Update #2555.
Diffstat (limited to 'cpukit/score/src/coremutex.c')
-rw-r--r--cpukit/score/src/coremutex.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/cpukit/score/src/coremutex.c b/cpukit/score/src/coremutex.c
index 88d487ca4b..75e0c49592 100644
--- a/cpukit/score/src/coremutex.c
+++ b/cpukit/score/src/coremutex.c
@@ -96,3 +96,25 @@ CORE_mutex_Status _CORE_mutex_Initialize(
return CORE_MUTEX_STATUS_SUCCESSFUL;
}
+
+Thread_Control *_CORE_mutex_Was_deleted(
+ Thread_Control *the_thread,
+ Thread_queue_Queue *queue,
+ ISR_lock_Context *lock_context
+)
+{
+ the_thread->Wait.return_code = CORE_MUTEX_WAS_DELETED;
+
+ return the_thread;
+}
+
+Thread_Control *_CORE_mutex_Unsatisfied_nowait(
+ Thread_Control *the_thread,
+ Thread_queue_Queue *queue,
+ ISR_lock_Context *lock_context
+)
+{
+ the_thread->Wait.return_code = CORE_MUTEX_STATUS_UNSATISFIED_NOWAIT;
+
+ return the_thread;
+}