Lines Matching +full:software +full:- +full:locked
2 * Copyright 2010-2015 Samy Al Bahra.
14 * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
39 unsigned int locked; member
62 node->locked = true; in ck_spinlock_mcs_trylock()
63 node->next = NULL; in ck_spinlock_mcs_trylock()
91 node->locked = true; in ck_spinlock_mcs_lock()
92 node->next = NULL; in ck_spinlock_mcs_lock()
106 ck_pr_store_ptr(&previous->next, node); in ck_spinlock_mcs_lock()
107 while (ck_pr_load_uint(&node->locked) == true) in ck_spinlock_mcs_lock()
123 next = ck_pr_load_ptr(&node->next); in ck_spinlock_mcs_unlock()
137 * is in-progress. In this case, busy-wait until the queue is in ck_spinlock_mcs_unlock()
142 next = ck_pr_load_ptr(&node->next); in ck_spinlock_mcs_unlock()
151 ck_pr_store_uint(&next->locked, false); in ck_spinlock_mcs_unlock()