Searched refs:mcs_spinlock (Results 1 – 24 of 24) sorted by relevance
18 struct mcs_spinlock { struct19 struct mcs_spinlock *next; argument65 void mcs_spin_lock(struct mcs_spinlock **lock, struct mcs_spinlock *node) in mcs_spin_lock()67 struct mcs_spinlock *prev; in mcs_spin_lock()102 void mcs_spin_unlock(struct mcs_spinlock **lock, struct mcs_spinlock *node) in mcs_spin_unlock()104 struct mcs_spinlock *next = READ_ONCE(node->next); in mcs_spin_unlock()
81 struct mcs_spinlock mcs;124 static inline __pure struct mcs_spinlock *decode_tail(u32 tail) in decode_tail()133 struct mcs_spinlock *grab_mcs_node(struct mcs_spinlock *base, int idx) in grab_mcs_node()271 static __always_inline void __pv_init_node(struct mcs_spinlock *node) { } in __pv_init_node()272 static __always_inline void __pv_wait_node(struct mcs_spinlock *node, in __pv_wait_node()273 struct mcs_spinlock *prev) { } in __pv_wait_node()275 struct mcs_spinlock *node) { } in __pv_kick_node()277 struct mcs_spinlock *node) in __pv_wait_head_or_lock()316 struct mcs_spinlock *prev, *next, *node; in queued_spin_lock_slowpath()
51 struct mcs_spinlock mcs;278 static void pv_init_node(struct mcs_spinlock *node) in pv_init_node()293 static void pv_wait_node(struct mcs_spinlock *node, struct mcs_spinlock *prev) in pv_wait_node()360 static void pv_kick_node(struct qspinlock *lock, struct mcs_spinlock *node) in pv_kick_node()403 pv_wait_head_or_lock(struct qspinlock *lock, struct mcs_spinlock *node) in pv_wait_head_or_lock()
10 generic-y += mcs_spinlock.h
13 generic-y += mcs_spinlock.h
7 generic-y += mcs_spinlock.h
15 generic-y += mcs_spinlock.h
17 generic-y += mcs_spinlock.h
21 generic-y += mcs_spinlock.h
14 generic-y += mcs_spinlock.h
16 generic-y += mcs_spinlock.h
20 generic-y += mcs_spinlock.h
22 generic-y += mcs_spinlock.h
25 generic-y += mcs_spinlock.h
24 generic-y += mcs_spinlock.h
29 generic-y += mcs_spinlock.h
26 generic-y += mcs_spinlock.h
31 generic-y += mcs_spinlock.h