Lines Matching refs:node
173 struct pv_node *node; member
212 static struct qspinlock **pv_hash(struct qspinlock *lock, struct pv_node *node) in pv_hash() argument
221 WRITE_ONCE(he->node, node); in pv_hash()
243 struct pv_node *node; in pv_unhash() local
247 node = READ_ONCE(he->node); in pv_unhash()
249 return node; in pv_unhash()
278 static void pv_init_node(struct mcs_spinlock *node) in pv_init_node() argument
280 struct pv_node *pn = (struct pv_node *)node; in pv_init_node()
293 static void pv_wait_node(struct mcs_spinlock *node, struct mcs_spinlock *prev) in pv_wait_node() argument
295 struct pv_node *pn = (struct pv_node *)node; in pv_wait_node()
302 if (READ_ONCE(node->locked)) in pv_wait_node()
322 if (!READ_ONCE(node->locked)) { in pv_wait_node()
343 !READ_ONCE(node->locked)); in pv_wait_node()
360 static void pv_kick_node(struct qspinlock *lock, struct mcs_spinlock *node) in pv_kick_node() argument
362 struct pv_node *pn = (struct pv_node *)node; in pv_kick_node()
403 pv_wait_head_or_lock(struct qspinlock *lock, struct mcs_spinlock *node) in pv_wait_head_or_lock() argument
405 struct pv_node *pn = (struct pv_node *)node; in pv_wait_head_or_lock()
495 struct pv_node *node; in __pv_queued_spin_unlock_slowpath() local
517 node = pv_unhash(lock); in __pv_queued_spin_unlock_slowpath()
533 pv_kick(node->cpu); in __pv_queued_spin_unlock_slowpath()