From 724bca75dfd24ab12ae3f25c2ffb10037c14e7d3 Mon Sep 17 00:00:00 2001 From: Justus Winter <4winter@informatik.uni-hamburg.de> Date: Sat, 18 Jul 2015 16:55:12 +0200 Subject: yyy more general locks, crashes, maybe b/c interrupt handler --- ipc/ipc_object.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) (limited to 'ipc') diff --git a/ipc/ipc_object.h b/ipc/ipc_object.h index be5bea7..8504a23 100644 --- a/ipc/ipc_object.h +++ b/ipc/ipc_object.h @@ -46,7 +46,7 @@ typedef unsigned int ipc_object_bits_t; typedef unsigned int ipc_object_type_t; typedef struct ipc_object { - decl_simple_lock_data(,io_lock_data) + struct lock io_lock_data; ipc_object_refs_t io_references; ipc_object_bits_t io_bits; } *ipc_object_t; @@ -85,10 +85,10 @@ extern struct kmem_cache ipc_object_caches[IOT_NUMBER]; #define io_free(otype, io) \ kmem_cache_free(&ipc_object_caches[(otype)], (vm_offset_t) (io)) -#define io_lock_init(io) simple_lock_init(&(io)->io_lock_data) -#define io_lock(io) simple_lock(&(io)->io_lock_data) -#define io_lock_try(io) simple_lock_try(&(io)->io_lock_data) -#define io_unlock(io) simple_unlock(&(io)->io_lock_data) +#define io_lock_init(io) lock_init(&(io)->io_lock_data, TRUE) +#define io_lock(io) lock_write(&(io)->io_lock_data) +#define io_lock_try(io) lock_try_write(&(io)->io_lock_data) +#define io_unlock(io) lock_write_done(&(io)->io_lock_data) #define io_check_unlock(io) \ MACRO_BEGIN \ -- cgit v1.2.3