Searched refs:__sl_cas (Results 1 – 1 of 1) sorted by relevance
| /Linux-v4.19/arch/sh/include/asm/ |
| D | spinlock-cas.h | 16 static inline unsigned __sl_cas(volatile unsigned *p, unsigned old, unsigned new) in __sl_cas() function 33 while (!__sl_cas(&lock->lock, 1, 0)); in arch_spin_lock() 38 __sl_cas(&lock->lock, 0, 1); in arch_spin_unlock() 43 return __sl_cas(&lock->lock, 1, 0); in arch_spin_trylock() 59 while (!old || __sl_cas(&rw->lock, old, old-1) != old); in arch_read_lock() 66 while (__sl_cas(&rw->lock, old, old+1) != old); in arch_read_unlock() 71 while (__sl_cas(&rw->lock, RW_LOCK_BIAS, 0) != RW_LOCK_BIAS); in arch_write_lock() 76 __sl_cas(&rw->lock, 0, RW_LOCK_BIAS); in arch_write_unlock() 83 while (old && __sl_cas(&rw->lock, old, old-1) != old); in arch_read_trylock() 89 return __sl_cas(&rw->lock, RW_LOCK_BIAS, 0) == RW_LOCK_BIAS; in arch_write_trylock()
|