Lines Matching full:lock

14 static inline void arch_spin_lock(arch_spinlock_t *lock)  in arch_spin_lock()  argument
18 u32 *p = &lock->lock; in arch_spin_lock()
32 lockval.tickets.owner = READ_ONCE(lock->tickets.owner); in arch_spin_lock()
37 static inline int arch_spin_trylock(arch_spinlock_t *lock) in arch_spin_trylock() argument
41 u32 *p = &lock->lock; in arch_spin_trylock()
65 static inline void arch_spin_unlock(arch_spinlock_t *lock) in arch_spin_unlock() argument
68 WRITE_ONCE(lock->tickets.owner, lock->tickets.owner + 1); in arch_spin_unlock()
71 static inline int arch_spin_value_unlocked(arch_spinlock_t lock) in arch_spin_value_unlocked() argument
73 return lock.tickets.owner == lock.tickets.next; in arch_spin_value_unlocked()
76 static inline int arch_spin_is_locked(arch_spinlock_t *lock) in arch_spin_is_locked() argument
78 return !arch_spin_value_unlocked(READ_ONCE(*lock)); in arch_spin_is_locked()
81 static inline int arch_spin_is_contended(arch_spinlock_t *lock) in arch_spin_is_contended() argument
83 struct __raw_tickets tickets = READ_ONCE(lock->tickets); in arch_spin_is_contended()
99 static inline void arch_spin_lock(arch_spinlock_t *lock) in arch_spin_lock() argument
101 u32 *p = &lock->lock; in arch_spin_lock()
116 static inline void arch_spin_unlock(arch_spinlock_t *lock) in arch_spin_unlock() argument
119 WRITE_ONCE(lock->lock, 0); in arch_spin_unlock()
122 static inline int arch_spin_trylock(arch_spinlock_t *lock) in arch_spin_trylock() argument
124 u32 *p = &lock->lock; in arch_spin_trylock()
145 #define arch_spin_is_locked(x) (READ_ONCE((x)->lock) != 0)
148 * read lock/unlock/trylock
150 static inline void arch_read_lock(arch_rwlock_t *lock) in arch_read_lock() argument
152 u32 *p = &lock->lock; in arch_read_lock()
167 static inline void arch_read_unlock(arch_rwlock_t *lock) in arch_read_unlock() argument
169 u32 *p = &lock->lock; in arch_read_unlock()
183 static inline int arch_read_trylock(arch_rwlock_t *lock) in arch_read_trylock() argument
185 u32 *p = &lock->lock; in arch_read_trylock()
207 * write lock/unlock/trylock
209 static inline void arch_write_lock(arch_rwlock_t *lock) in arch_write_lock() argument
211 u32 *p = &lock->lock; in arch_write_lock()
226 static inline void arch_write_unlock(arch_rwlock_t *lock) in arch_write_unlock() argument
229 WRITE_ONCE(lock->lock, 0); in arch_write_unlock()
232 static inline int arch_write_trylock(arch_rwlock_t *lock) in arch_write_trylock() argument
234 u32 *p = &lock->lock; in arch_write_trylock()