Home
last modified time | relevance | path

Searched refs:mcs_spinlock (Results 1 – 22 of 22) sorted by relevance

/Linux-v6.6/kernel/locking/
Dmcs_spinlock.h18 struct mcs_spinlock { struct
19 struct mcs_spinlock *next; argument
65 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()
Dqspinlock.c83 struct mcs_spinlock mcs;
126 static inline __pure struct mcs_spinlock *decode_tail(u32 tail) in decode_tail()
135 struct mcs_spinlock *grab_mcs_node(struct mcs_spinlock *base, int idx) in grab_mcs_node()
273 static __always_inline void __pv_init_node(struct mcs_spinlock *node) { } in __pv_init_node()
274 static __always_inline void __pv_wait_node(struct mcs_spinlock *node, in __pv_wait_node()
275 struct mcs_spinlock *prev) { } in __pv_wait_node()
277 struct mcs_spinlock *node) { } in __pv_kick_node()
279 struct mcs_spinlock *node) in __pv_wait_head_or_lock()
318 struct mcs_spinlock *prev, *next, *node; in queued_spin_lock_slowpath()
Dqspinlock_paravirt.h51 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()
/Linux-v6.6/arch/hexagon/include/asm/
DKbuild5 generic-y += mcs_spinlock.h
/Linux-v6.6/arch/sh/include/asm/
DKbuild4 generic-y += mcs_spinlock.h
/Linux-v6.6/arch/sparc/include/asm/
DKbuild6 generic-y += mcs_spinlock.h
/Linux-v6.6/arch/ia64/include/asm/
DKbuild5 generic-y += mcs_spinlock.h
/Linux-v6.6/arch/m68k/include/asm/
DKbuild5 generic-y += mcs_spinlock.h
/Linux-v6.6/arch/arc/include/asm/
DKbuild4 generic-y += mcs_spinlock.h
/Linux-v6.6/arch/alpha/include/asm/
DKbuild7 generic-y += mcs_spinlock.h
/Linux-v6.6/arch/nios2/include/asm/
DKbuild5 generic-y += mcs_spinlock.h
/Linux-v6.6/arch/parisc/include/asm/
DKbuild6 generic-y += mcs_spinlock.h
/Linux-v6.6/arch/s390/include/asm/
DKbuild9 generic-y += mcs_spinlock.h
/Linux-v6.6/arch/arm64/include/asm/
DKbuild3 generic-y += mcs_spinlock.h
/Linux-v6.6/arch/powerpc/include/asm/
DKbuild7 generic-y += mcs_spinlock.h
/Linux-v6.6/arch/xtensa/include/asm/
DKbuild5 generic-y += mcs_spinlock.h
/Linux-v6.6/arch/microblaze/include/asm/
DKbuild6 generic-y += mcs_spinlock.h
/Linux-v6.6/arch/x86/include/asm/
DKbuild14 generic-y += mcs_spinlock.h
/Linux-v6.6/arch/csky/include/asm/
DKbuild6 generic-y += mcs_spinlock.h
/Linux-v6.6/arch/mips/include/asm/
DKbuild11 generic-y += mcs_spinlock.h
/Linux-v6.6/arch/loongarch/include/asm/
DKbuild3 generic-y += mcs_spinlock.h
/Linux-v6.6/arch/um/include/asm/
DKbuild17 generic-y += mcs_spinlock.h