Lines Matching refs:val
43 u32 val = arch_spin_read_noalloc(lock); in arch_spin_lock_slow() local
44 u32 delta = my_ticket - arch_spin_current(val); in arch_spin_lock_slow()
57 u32 val = arch_spin_read_noalloc(lock); in arch_spin_trylock() local
58 if (unlikely(arch_spin_current(val) != arch_spin_next(val))) in arch_spin_trylock()
60 return cmpxchg(&lock->lock, val, (val + 1) & ~__ARCH_SPIN_NEXT_OVERFLOW) in arch_spin_trylock()
61 == val; in arch_spin_trylock()
68 u32 val = READ_ONCE(lock->lock); in arch_spin_unlock_wait() local
69 u32 curr = arch_spin_current(val); in arch_spin_unlock_wait()
72 if (arch_spin_next(val) == curr) in arch_spin_unlock_wait()
88 u32 val; in __read_lock_failed() local
92 val = __insn_fetchaddgez4(&rw->lock, 1); in __read_lock_failed()
93 } while (unlikely(arch_write_val_locked(val))); in __read_lock_failed()
103 void __write_lock_failed(arch_rwlock_t *rw, u32 val) in __write_lock_failed() argument
107 if (!arch_write_val_locked(val)) in __write_lock_failed()
108 val = __insn_fetchand4(&rw->lock, ~__WRITE_LOCK_BIT); in __write_lock_failed()
110 val = __insn_fetchor4(&rw->lock, __WRITE_LOCK_BIT); in __write_lock_failed()
111 } while (val != 0); in __write_lock_failed()