Searched refs:qspinlock (Results 1 – 18 of 18) sorted by relevance
/Linux-v6.1/arch/x86/include/asm/ |
D | qspinlock.h | 14 static __always_inline u32 queued_fetch_set_pending_acquire(struct qspinlock *lock) in queued_fetch_set_pending_acquire() 31 extern void native_queued_spin_lock_slowpath(struct qspinlock *lock, u32 val); 33 extern void __pv_queued_spin_lock_slowpath(struct qspinlock *lock, u32 val); 34 extern void __raw_callee_save___pv_queued_spin_unlock(struct qspinlock *lock); 44 static inline void native_queued_spin_unlock(struct qspinlock *lock) in native_queued_spin_unlock() 49 static inline void queued_spin_lock_slowpath(struct qspinlock *lock, u32 val) in queued_spin_lock_slowpath() 54 static inline void queued_spin_unlock(struct qspinlock *lock) in queued_spin_unlock() 88 static inline bool virt_spin_lock(struct qspinlock *lock) in virt_spin_lock()
|
D | qspinlock_paravirt.h | 69 extern void __lockfunc __pv_queued_spin_unlock(struct qspinlock *lock);
|
D | paravirt.h | 38 __visible void __native_queued_spin_unlock(struct qspinlock *lock); 588 static __always_inline void pv_queued_spin_lock_slowpath(struct qspinlock *lock, in pv_queued_spin_lock_slowpath() 594 static __always_inline void pv_queued_spin_unlock(struct qspinlock *lock) in pv_queued_spin_unlock() 618 void __raw_callee_save___native_queued_spin_unlock(struct qspinlock *lock);
|
D | paravirt_types.h | 251 struct qspinlock; 254 void (*queued_spin_lock_slowpath)(struct qspinlock *lock, u32 val);
|
/Linux-v6.1/include/asm-generic/ |
D | qspinlock.h | 51 static __always_inline int queued_spin_is_locked(struct qspinlock *lock) in queued_spin_is_locked() 71 static __always_inline int queued_spin_value_unlocked(struct qspinlock lock) in queued_spin_value_unlocked() 81 static __always_inline int queued_spin_is_contended(struct qspinlock *lock) in queued_spin_is_contended() 90 static __always_inline int queued_spin_trylock(struct qspinlock *lock) in queued_spin_trylock() 100 extern void queued_spin_lock_slowpath(struct qspinlock *lock, u32 val); 107 static __always_inline void queued_spin_lock(struct qspinlock *lock) in queued_spin_lock() 123 static __always_inline void queued_spin_unlock(struct qspinlock *lock) in queued_spin_unlock() 133 static __always_inline bool virt_spin_lock(struct qspinlock *lock) in virt_spin_lock()
|
D | qspinlock_types.h | 14 typedef struct qspinlock { struct
|
/Linux-v6.1/kernel/locking/ |
D | qspinlock_paravirt.h | 81 static inline bool pv_hybrid_queued_unfair_trylock(struct qspinlock *lock) in pv_hybrid_queued_unfair_trylock() 109 static __always_inline void set_pending(struct qspinlock *lock) in set_pending() 119 static __always_inline int trylock_clear_pending(struct qspinlock *lock) in trylock_clear_pending() 126 static __always_inline void set_pending(struct qspinlock *lock) in set_pending() 131 static __always_inline int trylock_clear_pending(struct qspinlock *lock) in trylock_clear_pending() 172 struct qspinlock *lock; 212 static struct qspinlock **pv_hash(struct qspinlock *lock, struct pv_node *node) in pv_hash() 239 static struct pv_node *pv_unhash(struct qspinlock *lock) in pv_unhash() 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() [all …]
|
D | qspinlock.c | 149 static __always_inline void clear_pending(struct qspinlock *lock) in clear_pending() 162 static __always_inline void clear_pending_set_locked(struct qspinlock *lock) in clear_pending_set_locked() 177 static __always_inline u32 xchg_tail(struct qspinlock *lock, u32 tail) in xchg_tail() 195 static __always_inline void clear_pending(struct qspinlock *lock) in clear_pending() 206 static __always_inline void clear_pending_set_locked(struct qspinlock *lock) in clear_pending_set_locked() 221 static __always_inline u32 xchg_tail(struct qspinlock *lock, u32 tail) in xchg_tail() 250 static __always_inline u32 queued_fetch_set_pending_acquire(struct qspinlock *lock) in queued_fetch_set_pending_acquire() 262 static __always_inline void set_locked(struct qspinlock *lock) in set_locked() 276 static __always_inline void __pv_kick_node(struct qspinlock *lock, in __pv_kick_node() 278 static __always_inline u32 __pv_wait_head_or_lock(struct qspinlock *lock, in __pv_wait_head_or_lock() [all …]
|
D | Makefile | 27 obj-$(CONFIG_QUEUED_SPINLOCKS) += qspinlock.o
|
/Linux-v6.1/arch/powerpc/include/asm/ |
D | qspinlock.h | 11 extern void native_queued_spin_lock_slowpath(struct qspinlock *lock, u32 val); 12 extern void __pv_queued_spin_lock_slowpath(struct qspinlock *lock, u32 val); 13 extern void __pv_queued_spin_unlock(struct qspinlock *lock); 15 static __always_inline void queued_spin_lock_slowpath(struct qspinlock *lock, u32 val) in queued_spin_lock_slowpath() 24 static inline void queued_spin_unlock(struct qspinlock *lock) in queued_spin_unlock() 33 extern void queued_spin_lock_slowpath(struct qspinlock *lock, u32 val); 36 static __always_inline void queued_spin_lock(struct qspinlock *lock) in queued_spin_lock()
|
/Linux-v6.1/arch/mips/include/asm/ |
D | spinlock.h | 21 static inline void queued_spin_unlock(struct qspinlock *lock) in queued_spin_unlock()
|
D | Kbuild | 15 generic-y += qspinlock.h
|
/Linux-v6.1/arch/x86/kernel/ |
D | paravirt-spinlocks.c | 12 __visible void __native_queued_spin_unlock(struct qspinlock *lock) in __native_queued_spin_unlock()
|
/Linux-v6.1/arch/arm64/include/asm/ |
D | Kbuild | 5 generic-y += qspinlock.h
|
/Linux-v6.1/arch/xtensa/include/asm/ |
D | Kbuild | 9 generic-y += qspinlock.h
|
/Linux-v6.1/arch/csky/include/asm/ |
D | Kbuild | 9 generic-y += qspinlock.h
|
/Linux-v6.1/arch/loongarch/include/asm/ |
D | Kbuild | 8 generic-y += qspinlock.h
|
/Linux-v6.1/Documentation/admin-guide/ |
D | kernel-parameters.txt | 6861 Disables the qspinlock slowpath using Xen PV optimizations. 6916 Disables the qspinlock slow path using PV optimizations
|