Lines Matching full:previous
41 struct ck_spinlock_clh *previous; member
49 unowned->previous = NULL; in ck_spinlock_clh_init()
71 struct ck_spinlock_clh *previous; in ck_spinlock_clh_lock() local
78 * Mark current request as last request. Save reference to previous in ck_spinlock_clh_lock()
81 previous = ck_pr_fas_ptr(queue, thread); in ck_spinlock_clh_lock()
82 thread->previous = previous; in ck_spinlock_clh_lock()
84 /* Wait until previous thread is done with lock. */ in ck_spinlock_clh_lock()
86 while (ck_pr_load_uint(&previous->wait) == true) in ck_spinlock_clh_lock()
96 struct ck_spinlock_clh *previous; in ck_spinlock_clh_unlock() local
105 previous = thread[0]->previous; in ck_spinlock_clh_unlock()
114 * Predecessor is guaranteed not to be spinning on previous request, in ck_spinlock_clh_unlock()
115 * so update caller to use previous structure. This allows successor in ck_spinlock_clh_unlock()
118 *thread = previous; in ck_spinlock_clh_unlock()