summaryrefslogtreecommitdiff
path: root/ipc
diff options
context:
space:
mode:
authorJustus Winter <4winter@informatik.uni-hamburg.de>2015-08-20 11:43:56 +0200
committerJustus Winter <4winter@informatik.uni-hamburg.de>2015-09-14 14:45:06 +0200
commit5cf5aaf24641a5b013eeef05785dc5b129108b18 (patch)
tree0ad525a7d51d77b843f531296db58dc4a6130f3f /ipc
parent9380d0cbe4d39c437eac640a21cea2809e8b02fb (diff)
ipc/ipc_mqueue: use a general lock
* ipc/ipc_mqueue.h (struct ipc_mqueue): Use a general lock. Adapt macros.
Diffstat (limited to 'ipc')
-rw-r--r--ipc/ipc_mqueue.h10
1 files changed, 5 insertions, 5 deletions
diff --git a/ipc/ipc_mqueue.h b/ipc/ipc_mqueue.h
index 2af5e02..e7d5670 100644
--- a/ipc/ipc_mqueue.h
+++ b/ipc/ipc_mqueue.h
@@ -43,17 +43,17 @@
#include <ipc/ipc_thread.h>
typedef struct ipc_mqueue {
- decl_simple_lock_data(, imq_lock_data)
+ struct lock imq_lock_data;
struct ipc_kmsg_queue imq_messages;
struct ipc_thread_queue imq_threads;
} *ipc_mqueue_t;
#define IMQ_NULL ((ipc_mqueue_t) 0)
-#define imq_lock_init(mq) simple_lock_init(&(mq)->imq_lock_data)
-#define imq_lock(mq) simple_lock(&(mq)->imq_lock_data)
-#define imq_lock_try(mq) simple_lock_try(&(mq)->imq_lock_data)
-#define imq_unlock(mq) simple_unlock(&(mq)->imq_lock_data)
+#define imq_lock_init(mq) lock_init(&(mq)->imq_lock_data, FALSE)
+#define imq_lock(mq) lock_write(&(mq)->imq_lock_data)
+#define imq_lock_try(mq) lock_try_write(&(mq)->imq_lock_data)
+#define imq_unlock(mq) lock_write_done(&(mq)->imq_lock_data)
extern void
ipc_mqueue_init(ipc_mqueue_t);