summaryrefslogtreecommitdiff
path: root/src/third_party/wiredtiger/src/include/mutex.h
diff options
context:
space:
mode:
authorMark Benvenuto <mark.benvenuto@mongodb.com>2014-11-05 18:18:45 -0500
committerMark Benvenuto <mark.benvenuto@mongodb.com>2014-11-06 10:51:20 -0500
commit1f741358bc48543349619d9e5d86d6c46b57abd7 (patch)
tree0ce4eeff568f7e0685c92b6c7e2007e0a448f351 /src/third_party/wiredtiger/src/include/mutex.h
parent4da5ebab3d27b20508fb73179cd2f3799b6ee607 (diff)
downloadmongo-1f741358bc48543349619d9e5d86d6c46b57abd7.tar.gz
Import wiredtiger-wiredtiger-2.4.1-0-gee7388e.tar.gz from wiredtiger branch develop
Diffstat (limited to 'src/third_party/wiredtiger/src/include/mutex.h')
-rw-r--r--src/third_party/wiredtiger/src/include/mutex.h20
1 files changed, 20 insertions, 0 deletions
diff --git a/src/third_party/wiredtiger/src/include/mutex.h b/src/third_party/wiredtiger/src/include/mutex.h
index b71496dd595..d1373b3d1ad 100644
--- a/src/third_party/wiredtiger/src/include/mutex.h
+++ b/src/third_party/wiredtiger/src/include/mutex.h
@@ -22,6 +22,26 @@ struct __wt_condvar {
};
/*
+ * !!!
+ * Don't touch this structure without understanding the read/write
+ * locking functions.
+ */
+typedef union { /* Read/write lock */
+#ifdef WORDS_BIGENDIAN
+ WiredTiger read/write locks require modification for big-endian systems.
+#else
+ uint64_t u;
+ uint32_t us;
+ struct {
+ uint16_t writers;
+ uint16_t readers;
+ uint16_t users;
+ uint16_t pad;
+ } s;
+#endif
+} wt_rwlock_t;
+
+/*
* Read/write locks:
*
* WiredTiger uses read/write locks for shared/exclusive access to resources.