Lines Matching full:lock
27 static inline int arch_spin_is_locked(arch_spinlock_t *lock) in arch_spin_is_locked() argument
29 return __raw_spin_is_locked_asm(&lock->lock); in arch_spin_is_locked()
32 static inline void arch_spin_lock(arch_spinlock_t *lock) in arch_spin_lock() argument
34 __raw_spin_lock_asm(&lock->lock); in arch_spin_lock()
37 #define arch_spin_lock_flags(lock, flags) arch_spin_lock(lock) argument
39 static inline int arch_spin_trylock(arch_spinlock_t *lock) in arch_spin_trylock() argument
41 return __raw_spin_trylock_asm(&lock->lock); in arch_spin_trylock()
44 static inline void arch_spin_unlock(arch_spinlock_t *lock) in arch_spin_unlock() argument
46 __raw_spin_unlock_asm(&lock->lock); in arch_spin_unlock()
49 static inline void arch_spin_unlock_wait(arch_spinlock_t *lock) in arch_spin_unlock_wait() argument
51 while (arch_spin_is_locked(lock)) in arch_spin_unlock_wait()
57 return __raw_uncached_fetch_asm(&rw->lock) > 0; in arch_read_can_lock()
62 return __raw_uncached_fetch_asm(&rw->lock) == RW_LOCK_BIAS; in arch_write_can_lock()
67 __raw_read_lock_asm(&rw->lock); in arch_read_lock()
70 #define arch_read_lock_flags(lock, flags) arch_read_lock(lock) argument
74 return __raw_read_trylock_asm(&rw->lock); in arch_read_trylock()
79 __raw_read_unlock_asm(&rw->lock); in arch_read_unlock()
84 __raw_write_lock_asm(&rw->lock); in arch_write_lock()
87 #define arch_write_lock_flags(lock, flags) arch_write_lock(lock) argument
91 return __raw_write_trylock_asm(&rw->lock); in arch_write_trylock()
96 __raw_write_unlock_asm(&rw->lock); in arch_write_unlock()
99 #define arch_spin_relax(lock) cpu_relax() argument
100 #define arch_read_relax(lock) cpu_relax() argument
101 #define arch_write_relax(lock) cpu_relax() argument