Lines Matching refs:lock
38 static inline int arch_spin_is_locked(arch_spinlock_t *lock) in arch_spin_is_locked() argument
40 u32 counters = ACCESS_ONCE(lock->lock); in arch_spin_is_locked()
45 #define arch_spin_lock_flags(lock, flags) arch_spin_lock(lock) argument
49 static inline int arch_spin_is_contended(arch_spinlock_t *lock) in arch_spin_is_contended() argument
51 u32 counters = ACCESS_ONCE(lock->lock); in arch_spin_is_contended()
57 static inline void arch_spin_lock(arch_spinlock_t *lock) in arch_spin_lock() argument
92 : [ticket_ptr] "+" GCC_OFF_SMALL_ASM() (lock->lock), in arch_spin_lock()
93 [serving_now_ptr] "+m" (lock->h.serving_now), in arch_spin_lock()
125 : [ticket_ptr] "+" GCC_OFF_SMALL_ASM() (lock->lock), in arch_spin_lock()
126 [serving_now_ptr] "+m" (lock->h.serving_now), in arch_spin_lock()
135 static inline void arch_spin_unlock(arch_spinlock_t *lock) in arch_spin_unlock() argument
137 unsigned int serving_now = lock->h.serving_now + 1; in arch_spin_unlock()
139 lock->h.serving_now = (u16)serving_now; in arch_spin_unlock()
143 static inline unsigned int arch_spin_trylock(arch_spinlock_t *lock) in arch_spin_trylock() argument
167 : [ticket_ptr] "+" GCC_OFF_SMALL_ASM() (lock->lock), in arch_spin_trylock()
191 : [ticket_ptr] "+" GCC_OFF_SMALL_ASM() (lock->lock), in arch_spin_trylock()
216 #define arch_read_can_lock(rw) ((rw)->lock >= 0)
222 #define arch_write_can_lock(rw) (!(rw)->lock)
238 : "=" GCC_OFF_SMALL_ASM() (rw->lock), "=&r" (tmp) in arch_read_lock()
239 : GCC_OFF_SMALL_ASM() (rw->lock) in arch_read_lock()
248 : "=" GCC_OFF_SMALL_ASM() (rw->lock), "=&r" (tmp) in arch_read_lock()
249 : GCC_OFF_SMALL_ASM() (rw->lock) in arch_read_lock()
269 : "=" GCC_OFF_SMALL_ASM() (rw->lock), "=&r" (tmp) in arch_read_unlock()
270 : GCC_OFF_SMALL_ASM() (rw->lock) in arch_read_unlock()
278 : "=" GCC_OFF_SMALL_ASM() (rw->lock), "=&r" (tmp) in arch_read_unlock()
279 : GCC_OFF_SMALL_ASM() (rw->lock) in arch_read_unlock()
299 : "=" GCC_OFF_SMALL_ASM() (rw->lock), "=&r" (tmp) in arch_write_lock()
300 : GCC_OFF_SMALL_ASM() (rw->lock) in arch_write_lock()
309 : "=" GCC_OFF_SMALL_ASM() (rw->lock), "=&r" (tmp) in arch_write_lock()
310 : GCC_OFF_SMALL_ASM() (rw->lock) in arch_write_lock()
325 : "=m" (rw->lock) in arch_write_unlock()
326 : "m" (rw->lock) in arch_write_unlock()
349 : "=" GCC_OFF_SMALL_ASM() (rw->lock), "=&r" (tmp), "=&r" (ret) in arch_read_trylock()
350 : GCC_OFF_SMALL_ASM() (rw->lock) in arch_read_trylock()
366 : "=" GCC_OFF_SMALL_ASM() (rw->lock), "=&r" (tmp), "=&r" (ret) in arch_read_trylock()
367 : GCC_OFF_SMALL_ASM() (rw->lock) in arch_read_trylock()
393 : "=" GCC_OFF_SMALL_ASM() (rw->lock), "=&r" (tmp), "=&r" (ret) in arch_write_trylock()
394 : GCC_OFF_SMALL_ASM() (rw->lock) in arch_write_trylock()
406 : "=" GCC_OFF_SMALL_ASM() (rw->lock), "=&r" (tmp), in arch_write_trylock()
408 : GCC_OFF_SMALL_ASM() (rw->lock) in arch_write_trylock()
418 #define arch_read_lock_flags(lock, flags) arch_read_lock(lock) argument
419 #define arch_write_lock_flags(lock, flags) arch_write_lock(lock) argument
421 #define arch_spin_relax(lock) cpu_relax() argument
422 #define arch_read_relax(lock) cpu_relax() argument
423 #define arch_write_relax(lock) cpu_relax() argument