Searched refs:rwstate (Results 1 – 4 of 4) sorted by relevance
138 volatile uint32_t *rwstate = (volatile uint32_t *)&rwlp->rwlock_readers; in rw_read_held() local147 readers = *rwstate; in rw_read_held()181 volatile uint32_t *rwstate = (volatile uint32_t *)&rwlp->rwlock_readers; in rw_write_held() local188 readers = *rwstate; in rw_write_held()284 volatile uint32_t *rwstate = (volatile uint32_t *)&rwlp->rwlock_readers; in read_lock_try() local291 while (((readers = *rwstate) & mask) == 0) { in read_lock_try()292 if (atomic_cas_32(rwstate, readers, readers + 1) == readers) { in read_lock_try()307 volatile uint32_t *rwstate = (volatile uint32_t *)&rwlp->rwlock_readers; in read_unlock_try() local312 while (((readers = *rwstate) & URW_HAS_WAITERS) == 0) { in read_unlock_try()313 if (atomic_cas_32(rwstate, readers, readers - 1) == readers) { in read_unlock_try()[all …]
266 uint32_t rwstate; in rwlock_error() local298 rwstate = (uint32_t)rcopy.rwlock_readers; in rwlock_error()316 if (rwstate & URW_WRITE_LOCKED) { in rwlock_error()325 } else if (rwstate & URW_READERS_MASK) { in rwlock_error()327 ultos((uint64_t)(rwstate & URW_READERS_MASK), 10, in rwlock_error()333 if (rwstate & URW_HAS_WAITERS) in rwlock_error()
2243 uint32_t rwstate = 0; in lwp_rwlock_release() local2255 rwstate |= URW_WRITE_LOCKED; in lwp_rwlock_release()2264 rwstate |= URW_HAS_WAITERS; in lwp_rwlock_release()2271 rwstate++; in lwp_rwlock_release()2281 rwstate |= URW_HAS_WAITERS; in lwp_rwlock_release()2291 suword32_noerr(&rw->rwlock_readers, rwstate); in lwp_rwlock_release()2341 uint32_t rwstate; in lwp_rwlock_lock() local2463 fuword32_noerr(&rw->rwlock_readers, &rwstate); in lwp_rwlock_lock()2469 rwstate |= URW_HAS_WAITERS; in lwp_rwlock_lock()2474 if (!(rwstate & URW_WRITE_LOCKED)) { in lwp_rwlock_lock()[all …]
2571 uint32_t rwstate; in sync_get_info_common() local2581 rwstate = (uint32_t)generic_so.rwlock.rwlock_readers; in sync_get_info_common()2582 if (rwstate & URW_WRITE_LOCKED) { in sync_get_info_common()2592 si_p->si_state.nreaders = (rwstate & URW_READERS_MASK); in sync_get_info_common()2594 si_p->si_has_waiters = ((rwstate & URW_HAS_WAITERS) != 0); in sync_get_info_common()2902 uint32_t *rwstate; in __td_sync_setstate() local2966 rwstate = (uint32_t *)&generic_so.rwlock.readers; in __td_sync_setstate()2967 *rwstate &= URW_HAS_WAITERS; in __td_sync_setstate()2969 *rwstate |= URW_WRITE_LOCKED; in __td_sync_setstate()2971 *rwstate |= (value & URW_READERS_MASK); in __td_sync_setstate()