Home
last modified time | relevance | path

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

/linux-4.4.14/kernel/locking/
Dmcs_spinlock.h17 struct mcs_spinlock { struct
18 struct mcs_spinlock *next; argument
62 void mcs_spin_lock(struct mcs_spinlock **lock, struct mcs_spinlock *node) in mcs_spin_lock()
64 struct mcs_spinlock *prev; in mcs_spin_lock()
99 void mcs_spin_unlock(struct mcs_spinlock **lock, struct mcs_spinlock *node) in mcs_spin_unlock()
101 struct mcs_spinlock *next = READ_ONCE(node->next); in mcs_spin_unlock()
Dqspinlock_paravirt.h36 struct mcs_spinlock mcs;
37 struct mcs_spinlock __res[3];
149 static void pv_init_node(struct mcs_spinlock *node) in pv_init_node()
153 BUILD_BUG_ON(sizeof(struct pv_node) > 5*sizeof(struct mcs_spinlock)); in pv_init_node()
164 static void pv_wait_node(struct mcs_spinlock *node) in pv_wait_node()
218 static void pv_kick_node(struct qspinlock *lock, struct mcs_spinlock *node) in pv_kick_node()
248 static void pv_wait_head(struct qspinlock *lock, struct mcs_spinlock *node) in pv_wait_head()
Dqspinlock.c85 static DEFINE_PER_CPU_ALIGNED(struct mcs_spinlock, mcs_nodes[MAX_NODES]);
105 static inline struct mcs_spinlock *decode_tail(u32 tail) in decode_tail()
240 static __always_inline void __pv_init_node(struct mcs_spinlock *node) { } in __pv_init_node()
241 static __always_inline void __pv_wait_node(struct mcs_spinlock *node) { } in __pv_wait_node()
243 struct mcs_spinlock *node) { } in __pv_kick_node()
245 struct mcs_spinlock *node) { } in __pv_wait_head()
283 struct mcs_spinlock *prev, *next, *node; in queued_spin_lock_slowpath()
/linux-4.4.14/arch/s390/include/asm/
DKbuild5 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/powerpc/include/asm/
DKbuild6 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/alpha/include/asm/
DKbuild7 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/x86/include/asm/
DKbuild11 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/frv/include/asm/
DKbuild6 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/ia64/include/asm/
DKbuild6 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/mn10300/include/asm/
DKbuild7 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/microblaze/include/asm/
DKbuild8 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/m32r/include/asm/
DKbuild7 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/score/include/asm/
DKbuild9 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/sparc/include/asm/
DKbuild14 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/mips/include/asm/
DKbuild9 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/avr32/include/asm/
DKbuild14 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/parisc/include/asm/
DKbuild17 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/um/include/asm/
DKbuild18 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/xtensa/include/asm/
DKbuild20 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/tile/include/asm/
DKbuild21 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/m68k/include/asm/
DKbuild20 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/sh/include/asm/
DKbuild18 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/cris/include/asm/
DKbuild26 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/arc/include/asm/
DKbuild24 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/blackfin/include/asm/
DKbuild23 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/arm64/include/asm/
DKbuild27 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/hexagon/include/asm/
DKbuild30 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/metag/include/asm/
DKbuild27 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/c6x/include/asm/
DKbuild28 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/unicore32/include/asm/
DKbuild28 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/nios2/include/asm/
DKbuild32 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/openrisc/include/asm/
DKbuild38 generic-y += mcs_spinlock.h
/linux-4.4.14/arch/h8300/include/asm/
DKbuild35 generic-y += mcs_spinlock.h