Symbol: qspinlock
arch/loongarch/include/asm/qspinlock.h
13
static inline bool virt_spin_lock(struct qspinlock *lock)
arch/mips/include/asm/spinlock.h
21
static inline void queued_spin_unlock(struct qspinlock *lock)
arch/powerpc/include/asm/qspinlock.h
114
static __always_inline int __queued_spin_trylock_steal(struct qspinlock *lock)
arch/powerpc/include/asm/qspinlock.h
138
static __always_inline int queued_spin_trylock(struct qspinlock *lock)
arch/powerpc/include/asm/qspinlock.h
146
void queued_spin_lock_slowpath(struct qspinlock *lock);
arch/powerpc/include/asm/qspinlock.h
148
static __always_inline void queued_spin_lock(struct qspinlock *lock)
arch/powerpc/include/asm/qspinlock.h
154
static inline void queued_spin_unlock(struct qspinlock *lock)
arch/powerpc/include/asm/qspinlock.h
71
static __always_inline int queued_spin_is_locked(struct qspinlock *lock)
arch/powerpc/include/asm/qspinlock.h
76
static __always_inline int queued_spin_value_unlocked(struct qspinlock lock)
arch/powerpc/include/asm/qspinlock.h
81
static __always_inline int queued_spin_is_contended(struct qspinlock *lock)
arch/powerpc/include/asm/qspinlock.h
92
static __always_inline int __queued_spin_trylock_nosteal(struct qspinlock *lock)
arch/powerpc/lib/qspinlock.c
123
static __always_inline u32 trylock_clean_tail(struct qspinlock *lock, u32 tail)
arch/powerpc/lib/qspinlock.c
162
static __always_inline u32 publish_tail_cpu(struct qspinlock *lock, u32 tail)
arch/powerpc/lib/qspinlock.c
18
struct qspinlock *lock;
arch/powerpc/lib/qspinlock.c
182
static __always_inline u32 set_mustq(struct qspinlock *lock)
arch/powerpc/lib/qspinlock.c
198
static __always_inline u32 clear_mustq(struct qspinlock *lock)
arch/powerpc/lib/qspinlock.c
214
static __always_inline bool try_set_sleepy(struct qspinlock *lock, u32 old)
arch/powerpc/lib/qspinlock.c
236
static __always_inline void seen_sleepy_owner(struct qspinlock *lock, u32 val)
arch/powerpc/lib/qspinlock.c
261
static struct qnode *get_tail_qnode(struct qspinlock *lock, int prev_cpu)
arch/powerpc/lib/qspinlock.c
285
static __always_inline bool __yield_to_locked_owner(struct qspinlock *lock, u32 val, bool paravirt, bool mustq)
arch/powerpc/lib/qspinlock.c
338
static __always_inline bool yield_to_locked_owner(struct qspinlock *lock, u32 val, bool paravirt)
arch/powerpc/lib/qspinlock.c
344
static __always_inline bool yield_head_to_locked_owner(struct qspinlock *lock, u32 val, bool paravirt)
arch/powerpc/lib/qspinlock.c
377
static __always_inline bool yield_to_prev(struct qspinlock *lock, struct qnode *node, int prev_cpu, bool paravirt)
arch/powerpc/lib/qspinlock.c
457
static __always_inline bool try_to_steal_lock(struct qspinlock *lock, bool paravirt)
arch/powerpc/lib/qspinlock.c
527
static __always_inline void queued_spin_lock_mcs_queue(struct qspinlock *lock, bool paravirt)
arch/powerpc/lib/qspinlock.c
712
void __lockfunc queued_spin_lock_slowpath(struct qspinlock *lock)
arch/riscv/include/asm/spinlock.h
40
#include <asm/qspinlock.h>
arch/x86/include/asm/paravirt-spinlock.h
11
struct qspinlock;
arch/x86/include/asm/paravirt-spinlock.h
121
static inline bool virt_spin_lock(struct qspinlock *lock)
arch/x86/include/asm/paravirt-spinlock.h
14
void (*queued_spin_lock_slowpath)(struct qspinlock *lock, u32 val);
arch/x86/include/asm/paravirt-spinlock.h
26
extern void native_queued_spin_lock_slowpath(struct qspinlock *lock, u32 val);
arch/x86/include/asm/paravirt-spinlock.h
28
extern void __pv_queued_spin_lock_slowpath(struct qspinlock *lock, u32 val);
arch/x86/include/asm/paravirt-spinlock.h
29
extern void __raw_callee_save___pv_queued_spin_unlock(struct qspinlock *lock);
arch/x86/include/asm/paravirt-spinlock.h
32
static __always_inline void pv_queued_spin_lock_slowpath(struct qspinlock *lock,
arch/x86/include/asm/paravirt-spinlock.h
38
static __always_inline void pv_queued_spin_unlock(struct qspinlock *lock)
arch/x86/include/asm/paravirt-spinlock.h
59
static inline void native_queued_spin_unlock(struct qspinlock *lock)
arch/x86/include/asm/paravirt-spinlock.h
64
static inline void queued_spin_lock_slowpath(struct qspinlock *lock, u32 val)
arch/x86/include/asm/paravirt-spinlock.h
69
static inline void queued_spin_unlock(struct qspinlock *lock)
arch/x86/include/asm/paravirt-spinlock.h
91
void __raw_callee_save___native_queued_spin_unlock(struct qspinlock *lock);
arch/x86/include/asm/paravirt-spinlock.h
96
__visible void __native_queued_spin_unlock(struct qspinlock *lock);
arch/x86/include/asm/qspinlock.h
17
static __always_inline u32 queued_fetch_set_pending_acquire(struct qspinlock *lock)
arch/x86/include/asm/qspinlock_paravirt.h
63
extern void __lockfunc __pv_queued_spin_unlock(struct qspinlock *lock);
arch/x86/include/asm/qspinlock_paravirt.h
7
void __lockfunc __pv_queued_spin_unlock_slowpath(struct qspinlock *lock, u8 locked);
arch/x86/include/asm/rqspinlock.h
17
typedef struct qspinlock rqspinlock_t;
arch/x86/kernel/paravirt-spinlocks.c
22
__visible void __native_queued_spin_unlock(struct qspinlock *lock)
include/asm-generic/qspinlock.h
100
extern void queued_spin_lock_slowpath(struct qspinlock *lock, u32 val);
include/asm-generic/qspinlock.h
107
static __always_inline void queued_spin_lock(struct qspinlock *lock)
include/asm-generic/qspinlock.h
123
static __always_inline void queued_spin_unlock(struct qspinlock *lock)
include/asm-generic/qspinlock.h
133
static __always_inline bool virt_spin_lock(struct qspinlock *lock)
include/asm-generic/qspinlock.h
51
static __always_inline int queued_spin_is_locked(struct qspinlock *lock)
include/asm-generic/qspinlock.h
71
static __always_inline int queued_spin_value_unlocked(struct qspinlock lock)
include/asm-generic/qspinlock.h
81
static __always_inline int queued_spin_is_contended(struct qspinlock *lock)
include/asm-generic/qspinlock.h
90
static __always_inline int queued_spin_trylock(struct qspinlock *lock)
include/asm-generic/rqspinlock.h
33
struct qspinlock;
include/asm-generic/rqspinlock.h
35
typedef struct qspinlock rqspinlock_t;
kernel/bpf/rqspinlock.h
28
static __always_inline bool try_cmpxchg_tail(struct qspinlock *lock, u32 tail, u32 new_tail)
kernel/locking/qspinlock.c
130
void __lockfunc queued_spin_lock_slowpath(struct qspinlock *lock, u32 val)
kernel/locking/qspinlock.c
90
static __always_inline void __pv_kick_node(struct qspinlock *lock,
kernel/locking/qspinlock.c
92
static __always_inline u32 __pv_wait_head_or_lock(struct qspinlock *lock,
kernel/locking/qspinlock.h
114
static __always_inline u32 xchg_tail(struct qspinlock *lock, u32 tail)
kernel/locking/qspinlock.h
132
static __always_inline void clear_pending(struct qspinlock *lock)
kernel/locking/qspinlock.h
143
static __always_inline void clear_pending_set_locked(struct qspinlock *lock)
kernel/locking/qspinlock.h
158
static __always_inline u32 xchg_tail(struct qspinlock *lock, u32 tail)
kernel/locking/qspinlock.h
184
static __always_inline u32 queued_fetch_set_pending_acquire(struct qspinlock *lock)
kernel/locking/qspinlock.h
196
static __always_inline void set_locked(struct qspinlock *lock)
kernel/locking/qspinlock.h
86
static __always_inline void clear_pending(struct qspinlock *lock)
kernel/locking/qspinlock.h
99
static __always_inline void clear_pending_set_locked(struct qspinlock *lock)
kernel/locking/qspinlock_paravirt.h
110
static __always_inline void set_pending(struct qspinlock *lock)
kernel/locking/qspinlock_paravirt.h
120
static __always_inline bool trylock_clear_pending(struct qspinlock *lock)
kernel/locking/qspinlock_paravirt.h
128
static __always_inline void set_pending(struct qspinlock *lock)
kernel/locking/qspinlock_paravirt.h
133
static __always_inline bool trylock_clear_pending(struct qspinlock *lock)
kernel/locking/qspinlock_paravirt.h
168
struct qspinlock *lock;
kernel/locking/qspinlock_paravirt.h
208
static struct qspinlock **pv_hash(struct qspinlock *lock, struct pv_node *node)
kernel/locking/qspinlock_paravirt.h
215
struct qspinlock *old = NULL;
kernel/locking/qspinlock_paravirt.h
236
static struct pv_node *pv_unhash(struct qspinlock *lock)
kernel/locking/qspinlock_paravirt.h
357
static void pv_kick_node(struct qspinlock *lock, struct mcs_spinlock *node)
kernel/locking/qspinlock_paravirt.h
399
pv_wait_head_or_lock(struct qspinlock *lock, struct mcs_spinlock *node)
kernel/locking/qspinlock_paravirt.h
402
struct qspinlock **lp = NULL;
kernel/locking/qspinlock_paravirt.h
411
lp = (struct qspinlock **)1;
kernel/locking/qspinlock_paravirt.h
499
__pv_queued_spin_unlock_slowpath(struct qspinlock *lock, u8 locked)
kernel/locking/qspinlock_paravirt.h
543
__visible __lockfunc void __pv_queued_spin_unlock(struct qspinlock *lock)
kernel/locking/qspinlock_paravirt.h
81
static inline bool pv_hybrid_queued_unfair_trylock(struct qspinlock *lock)