summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ipc/ipc_thread.h6
-rw-r--r--kern/task.h8
-rw-r--r--kern/thread.h2
3 files changed, 8 insertions, 8 deletions
diff --git a/ipc/ipc_thread.h b/ipc/ipc_thread.h
index 008ab4a..9e2c079 100644
--- a/ipc/ipc_thread.h
+++ b/ipc/ipc_thread.h
@@ -42,9 +42,9 @@ typedef thread_t ipc_thread_t;
#define ITH_NULL THREAD_NULL
-#define ith_lock_init(thread) simple_lock_init(&(thread)->ith_lock_data)
-#define ith_lock(thread) simple_lock(&(thread)->ith_lock_data)
-#define ith_unlock(thread) simple_unlock(&(thread)->ith_lock_data)
+#define ith_lock_init(thread) lock_init(&(thread)->ith_lock_data, FALSE)
+#define ith_lock(thread) lock_write(&(thread)->ith_lock_data)
+#define ith_unlock(thread) lock_write_done(&(thread)->ith_lock_data)
/*
* Note that this isn't a queue, but rather a stack. This causes
diff --git a/kern/task.h b/kern/task.h
index 2a4c28f..93087ff 100644
--- a/kern/task.h
+++ b/kern/task.h
@@ -89,7 +89,7 @@ struct task {
time_value_t creation_time; /* time stamp at creation */
/* IPC structures */
- decl_simple_lock_data(, itk_lock_data)
+ struct lock itk_lock_data;
struct ipc_port *itk_self; /* not a right, doesn't hold ref */
struct ipc_port *itk_sself; /* a send right */
struct ipc_port *itk_exception; /* a send right */
@@ -128,9 +128,9 @@ struct task {
#define task_lock(task) simple_lock(&(task)->lock)
#define task_unlock(task) simple_unlock(&(task)->lock)
-#define itk_lock_init(task) simple_lock_init(&(task)->itk_lock_data)
-#define itk_lock(task) simple_lock(&(task)->itk_lock_data)
-#define itk_unlock(task) simple_unlock(&(task)->itk_lock_data)
+#define itk_lock_init(task) lock_init(&(task)->itk_lock_data, FALSE)
+#define itk_lock(task) lock_write(&(task)->itk_lock_data)
+#define itk_unlock(task) lock_write_done(&(task)->itk_lock_data)
/*
* Exported routines/macros
diff --git a/kern/thread.h b/kern/thread.h
index 7106fd2..3128d7d 100644
--- a/kern/thread.h
+++ b/kern/thread.h
@@ -168,7 +168,7 @@ struct thread {
See ipc_kmsg_destroy() for more details. */
struct ipc_kmsg_queue ith_messages;
- decl_simple_lock_data(, ith_lock_data)
+ struct lock ith_lock_data;
struct ipc_port *ith_self; /* not a right, doesn't hold ref */
struct ipc_port *ith_sself; /* a send right */
struct ipc_port *ith_exception; /* a send right */