Searched refs:rwstate (Results 1 – 4 of 4) sorted by relevance
140 volatile uint32_t *rwstate = (volatile uint32_t *)&rwlp->rwlock_readers; in rw_read_held() local149 readers = *rwstate; in rw_read_held()183 volatile uint32_t *rwstate = (volatile uint32_t *)&rwlp->rwlock_readers; in rw_write_held() local190 readers = *rwstate; in rw_write_held()285 volatile uint32_t *rwstate = (volatile uint32_t *)&rwlp->rwlock_readers; in read_lock_try() local292 while (((readers = *rwstate) & mask) == 0) { in read_lock_try()293 if (atomic_cas_32(rwstate, readers, readers + 1) == readers) { in read_lock_try()308 volatile uint32_t *rwstate = (volatile uint32_t *)&rwlp->rwlock_readers; in read_unlock_try() local313 while (((readers = *rwstate) & URW_HAS_WAITERS) == 0) { in read_unlock_try()314 if (atomic_cas_32(rwstate, readers, readers - 1) == readers) { in read_unlock_try()[all …]
253 uint32_t rwstate; in rwlock_error() local285 rwstate = (uint32_t)rcopy.rwlock_readers; in rwlock_error()303 if (rwstate & URW_WRITE_LOCKED) { in rwlock_error()312 } else if (rwstate & URW_READERS_MASK) { in rwlock_error()314 ultos((uint64_t)(rwstate & URW_READERS_MASK), 10, in rwlock_error()320 if (rwstate & URW_HAS_WAITERS) in rwlock_error()
2258 uint32_t rwstate = 0; in lwp_rwlock_release() local2270 rwstate |= URW_WRITE_LOCKED; in lwp_rwlock_release()2279 rwstate |= URW_HAS_WAITERS; in lwp_rwlock_release()2286 rwstate++; in lwp_rwlock_release()2296 rwstate |= URW_HAS_WAITERS; in lwp_rwlock_release()2306 suword32_noerr(&rw->rwlock_readers, rwstate); in lwp_rwlock_release()2356 uint32_t rwstate; in lwp_rwlock_lock() local2478 fuword32_noerr(&rw->rwlock_readers, &rwstate); in lwp_rwlock_lock()2484 rwstate |= URW_HAS_WAITERS; in lwp_rwlock_lock()2489 if (!(rwstate & URW_WRITE_LOCKED)) { in lwp_rwlock_lock()[all …]
2565 uint32_t rwstate; in sync_get_info_common() local2575 rwstate = (uint32_t)generic_so.rwlock.rwlock_readers; in sync_get_info_common()2576 if (rwstate & URW_WRITE_LOCKED) { in sync_get_info_common()2586 si_p->si_state.nreaders = (rwstate & URW_READERS_MASK); in sync_get_info_common()2588 si_p->si_has_waiters = ((rwstate & URW_HAS_WAITERS) != 0); in sync_get_info_common()2896 uint32_t *rwstate; in __td_sync_setstate() local2959 rwstate = (uint32_t *)&generic_so.rwlock.readers; in __td_sync_setstate()2960 *rwstate &= URW_HAS_WAITERS; in __td_sync_setstate()2962 *rwstate |= URW_WRITE_LOCKED; in __td_sync_setstate()2964 *rwstate |= (value & URW_READERS_MASK); in __td_sync_setstate()