Lines Matching refs:lp
54 static inline int arch_spin_is_locked(arch_spinlock_t *lp) in arch_spin_is_locked() argument
56 return ACCESS_ONCE(lp->lock) != 0; in arch_spin_is_locked()
59 static inline int arch_spin_trylock_once(arch_spinlock_t *lp) in arch_spin_trylock_once() argument
62 return likely(arch_spin_value_unlocked(*lp) && in arch_spin_trylock_once()
63 _raw_compare_and_swap(&lp->lock, 0, SPINLOCK_LOCKVAL)); in arch_spin_trylock_once()
66 static inline void arch_spin_lock(arch_spinlock_t *lp) in arch_spin_lock() argument
68 if (!arch_spin_trylock_once(lp)) in arch_spin_lock()
69 arch_spin_lock_wait(lp); in arch_spin_lock()
72 static inline void arch_spin_lock_flags(arch_spinlock_t *lp, in arch_spin_lock_flags() argument
75 if (!arch_spin_trylock_once(lp)) in arch_spin_lock_flags()
76 arch_spin_lock_wait_flags(lp, flags); in arch_spin_lock_flags()
79 static inline int arch_spin_trylock(arch_spinlock_t *lp) in arch_spin_trylock() argument
81 if (!arch_spin_trylock_once(lp)) in arch_spin_trylock()
82 return arch_spin_trylock_retry(lp); in arch_spin_trylock()
86 static inline void arch_spin_unlock(arch_spinlock_t *lp) in arch_spin_unlock() argument
88 typecheck(unsigned int, lp->lock); in arch_spin_unlock()
92 : "+Q" (lp->lock) in arch_spin_unlock()
126 extern int _raw_read_trylock_retry(arch_rwlock_t *lp);
127 extern int _raw_write_trylock_retry(arch_rwlock_t *lp);
180 extern void _raw_read_lock_wait(arch_rwlock_t *lp);
181 extern void _raw_write_lock_wait(arch_rwlock_t *lp, unsigned int prev);
215 extern void _raw_read_lock_wait(arch_rwlock_t *lp);
216 extern void _raw_write_lock_wait(arch_rwlock_t *lp);