Lines Matching refs:lock
38 * region lock to provide mutual exclusion while reading/modifying all of
40 * header lock to wait on buffer I/O. The order of locking is as follows:
43 * Acquire the region lock.
47 * Release the region lock.
51 * Request the buffer lock.
53 * Acquire the buffer lock.
54 * Release the buffer lock.
55 * Acquire the region lock.
60 * Acquire the region lock.
64 * Acquire the buffer lock (guaranteed not to block).
65 * Release the region lock.
67 * Release the buffer lock.
68 * At this point, the buffer lock is available, but the logical
72 * Acquire the region lock.
74 * Release the region lock.
78 * reacquired when a region lock is reacquired because they couldn't have been
95 (void)__db_mutex_lock(&((RLAYOUT *)(dbmp)->mp)->lock, \
99 (void)__db_mutex_unlock(&((RLAYOUT *)(dbmp)->mp)->lock, \
121 db_mutex_t *mutexp; /* Structure lock. */
139 #define MP_LOCKHANDLE 0x01 /* Threaded, lock handles and region. */
140 #define MP_LOCKREGION 0x02 /* Concurrent access, lock region. */
163 db_mutex_t *mutexp; /* Structure lock. */
171 * This field is a special case -- it's protected by the region lock
172 * NOT the thread lock. The reason for this is that we always have
173 * the region lock immediately before or after we modify the field,
174 * and we don't want to use the structure lock to protect it because
175 * then I/O (which is done with the structure lock held because of
271 db_mutex_t mutex; /* Structure lock. */