Home
last modified time | relevance | path

Searched refs:rwstate (Results 1 – 4 of 4) sorted by relevance

/titanic_50/usr/src/lib/libc/port/threads/
H A Drwlock.c138 volatile uint32_t *rwstate = (volatile uint32_t *)&rwlp->rwlock_readers; in rw_read_held() local
147 readers = *rwstate; in rw_read_held()
181 volatile uint32_t *rwstate = (volatile uint32_t *)&rwlp->rwlock_readers; in rw_write_held() local
188 readers = *rwstate; in rw_write_held()
284 volatile uint32_t *rwstate = (volatile uint32_t *)&rwlp->rwlock_readers; in read_lock_try() local
291 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() local
312 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 …]
H A Dassfail.c266 uint32_t rwstate; in rwlock_error() local
298 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()
/titanic_50/usr/src/uts/common/syscall/
H A Dlwp_sobj.c2243 uint32_t rwstate = 0; in lwp_rwlock_release() local
2255 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() local
2463 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 …]
/titanic_50/usr/src/lib/libc_db/common/
H A Dthread_db.c2571 uint32_t rwstate; in sync_get_info_common() local
2581 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() local
2966 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()