Lines Matching refs:thread
76 struct ck_spinlock_hclh *thread) in ck_spinlock_hclh_lock() argument
81 thread->wait = true; in ck_spinlock_hclh_lock()
82 thread->splice = false; in ck_spinlock_hclh_lock()
83 thread->cluster_id = (*local_queue)->cluster_id; in ck_spinlock_hclh_lock()
85 thread->previous = *local_queue; in ck_spinlock_hclh_lock()
91 previous = ck_pr_fas_ptr(local_queue, thread); in ck_spinlock_hclh_lock()
92 thread->previous = previous; in ck_spinlock_hclh_lock()
98 ck_pr_load_int(&previous->cluster_id) == thread->cluster_id && in ck_spinlock_hclh_lock()
103 if (ck_pr_load_int(&previous->cluster_id) == thread->cluster_id && in ck_spinlock_hclh_lock()
123 ck_spinlock_hclh_unlock(struct ck_spinlock_hclh **thread) in ck_spinlock_hclh_unlock() argument
134 previous = thread[0]->previous; in ck_spinlock_hclh_unlock()
138 ck_pr_store_uint(&(*thread)->wait, false); in ck_spinlock_hclh_unlock()
145 *thread = previous; in ck_spinlock_hclh_unlock()