summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Cahill <michael.cahill@mongodb.com>2015-07-22 13:32:41 +1000
committerMichael Cahill <michael.cahill@mongodb.com>2015-08-04 14:43:14 +1000
commit9fe7ae86455a47abba98dc3845e7d5d02db436cf (patch)
treebd83c85f6f5a62ecad5c73a477d84f02accb9be0
parent855041d5cc25cc7f45c473fa9c2890a841f28658 (diff)
downloadmongo-9fe7ae86455a47abba98dc3845e7d5d02db436cf.tar.gz
Merge pull request #2078 from wiredtiger/union_packing
WT-2016: wt_rwlock_t union packing (cherry picked from commit 344858cb4c617c40448b57ab1f2c7c475dcd9ff4)
-rw-r--r--src/include/mutex.h4
-rw-r--r--src/os_posix/os_mtx_rw.c2
2 files changed, 4 insertions, 2 deletions
diff --git a/src/include/mutex.h b/src/include/mutex.h
index 07aa740c525..8f3cd168193 100644
--- a/src/include/mutex.h
+++ b/src/include/mutex.h
@@ -32,7 +32,9 @@ typedef union { /* Read/write lock */
WiredTiger read/write locks require modification for big-endian systems.
#else
uint64_t u;
- uint32_t us;
+ struct {
+ uint32_t us;
+ } i;
struct {
uint16_t writers;
uint16_t readers;
diff --git a/src/os_posix/os_mtx_rw.c b/src/os_posix/os_mtx_rw.c
index 3a3b0e0d74f..c3ae43b605f 100644
--- a/src/os_posix/os_mtx_rw.c
+++ b/src/os_posix/os_mtx_rw.c
@@ -216,7 +216,7 @@ __wt_writeunlock(WT_SESSION_IMPL *session, WT_RWLOCK *rwlock)
++copy.s.writers;
++copy.s.readers;
- l->us = copy.us;
+ l->i.us = copy.i.us;
return (0);
}