Lines Matching refs:cnts
42 int cnts; in queued_read_trylock() local
44 cnts = atomic_read(&lock->cnts); in queued_read_trylock()
45 if (likely(!(cnts & _QW_WMASK))) { in queued_read_trylock()
46 cnts = (u32)atomic_add_return_acquire(_QR_BIAS, &lock->cnts); in queued_read_trylock()
47 if (likely(!(cnts & _QW_WMASK))) in queued_read_trylock()
49 atomic_sub(_QR_BIAS, &lock->cnts); in queued_read_trylock()
61 int cnts; in queued_write_trylock() local
63 cnts = atomic_read(&lock->cnts); in queued_write_trylock()
64 if (unlikely(cnts)) in queued_write_trylock()
67 return likely(atomic_try_cmpxchg_acquire(&lock->cnts, &cnts, in queued_write_trylock()
76 int cnts; in queued_read_lock() local
78 cnts = atomic_add_return_acquire(_QR_BIAS, &lock->cnts); in queued_read_lock()
79 if (likely(!(cnts & _QW_WMASK))) in queued_read_lock()
92 int cnts = 0; in queued_write_lock() local
94 if (likely(atomic_try_cmpxchg_acquire(&lock->cnts, &cnts, _QW_LOCKED))) in queued_write_lock()
109 (void)atomic_sub_return_release(_QR_BIAS, &lock->cnts); in queued_read_unlock()