Lines Matching defs:state
187 int32_t state, wrflags;
194 state = rwlock->rw_state;
195 while (!(state & wrflags)) {
196 if (__predict_false(URWLOCK_READER_COUNT(state) ==
199 if (atomic_cmpset_acq_32(&rwlock->rw_state, state, state + 1))
201 state = rwlock->rw_state;
210 int32_t state;
212 state = rwlock->rw_state;
213 while ((state & URWLOCK_WRITE_OWNER) == 0 &&
214 URWLOCK_READER_COUNT(state) == 0) {
215 if (atomic_cmpset_acq_32(&rwlock->rw_state, state,
216 state | URWLOCK_WRITE_OWNER))
218 state = rwlock->rw_state;
245 int32_t state;
247 state = rwlock->rw_state;
248 if ((state & URWLOCK_WRITE_OWNER) != 0) {
254 if (__predict_false(URWLOCK_READER_COUNT(state) == 0))
256 if (!((state & (URWLOCK_WRITE_WAITERS |
258 URWLOCK_READER_COUNT(state) == 1)) {
260 state, state - 1))
262 state = rwlock->rw_state;