Lines Matching refs:lock
15 static inline void native_queued_spin_unlock(struct qspinlock *lock) in native_queued_spin_unlock() argument
17 smp_store_release((u8 *)lock, 0); in native_queued_spin_unlock()
21 extern void native_queued_spin_lock_slowpath(struct qspinlock *lock, u32 val);
23 extern void __pv_queued_spin_lock_slowpath(struct qspinlock *lock, u32 val);
24 extern void __raw_callee_save___pv_queued_spin_unlock(struct qspinlock *lock);
26 static inline void queued_spin_lock_slowpath(struct qspinlock *lock, u32 val) in queued_spin_lock_slowpath() argument
28 pv_queued_spin_lock_slowpath(lock, val); in queued_spin_lock_slowpath()
31 static inline void queued_spin_unlock(struct qspinlock *lock) in queued_spin_unlock() argument
33 pv_queued_spin_unlock(lock); in queued_spin_unlock()
36 static inline void queued_spin_unlock(struct qspinlock *lock) in queued_spin_unlock() argument
38 native_queued_spin_unlock(lock); in queued_spin_unlock()
44 static inline bool virt_spin_lock(struct qspinlock *lock) in virt_spin_lock() argument
56 while (atomic_read(&lock->val) != 0) in virt_spin_lock()
58 } while (atomic_cmpxchg(&lock->val, 0, _Q_LOCKED_VAL) != 0); in virt_spin_lock()