Lines Matching refs:old
19 _raw_compare_and_swap(unsigned int *lock, unsigned int old, unsigned int new) in _raw_compare_and_swap() argument
21 return __sync_bool_compare_and_swap(lock, old, new); in _raw_compare_and_swap()
134 unsigned int old = ACCESS_ONCE(rw->lock); in arch_read_trylock_once() local
135 return likely((int) old >= 0 && in arch_read_trylock_once()
136 _raw_compare_and_swap(&rw->lock, old, old + 1)); in arch_read_trylock_once()
141 unsigned int old = ACCESS_ONCE(rw->lock); in arch_write_trylock_once() local
142 return likely(old == 0 && in arch_write_trylock_once()
185 unsigned int old; in arch_read_lock() local
187 old = __RAW_LOCK(&rw->lock, 1, __RAW_OP_ADD); in arch_read_lock()
188 if ((int) old < 0) in arch_read_lock()
199 unsigned int old; in arch_write_lock() local
201 old = __RAW_LOCK(&rw->lock, 0x80000000, __RAW_OP_OR); in arch_write_lock()
202 if (old != 0) in arch_write_lock()
203 _raw_write_lock_wait(rw, old); in arch_write_lock()
226 unsigned int old; in arch_read_unlock() local
229 old = ACCESS_ONCE(rw->lock); in arch_read_unlock()
230 } while (!_raw_compare_and_swap(&rw->lock, old, old - 1)); in arch_read_unlock()