Lines Matching +full:loss +full:- +full:of +full:- +full:lock
2 * Copyright 2010-2015 Samy Al Bahra.
8 * 1. Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer.
11 * notice, this list of conditions and the following disclaimer in the
16 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
19 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
20 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
21 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
23 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
47 ck_spinlock_fas_init(struct ck_spinlock_fas *lock) in ck_spinlock_fas_init() argument
50 lock->value = false; in ck_spinlock_fas_init()
56 ck_spinlock_fas_trylock(struct ck_spinlock_fas *lock) in ck_spinlock_fas_trylock() argument
60 value = ck_pr_fas_uint(&lock->value, true); in ck_spinlock_fas_trylock()
67 ck_spinlock_fas_locked(struct ck_spinlock_fas *lock) in ck_spinlock_fas_locked() argument
71 r = ck_pr_load_uint(&lock->value); in ck_spinlock_fas_locked()
77 ck_spinlock_fas_lock(struct ck_spinlock_fas *lock) in ck_spinlock_fas_lock() argument
80 while (CK_CC_UNLIKELY(ck_pr_fas_uint(&lock->value, true) == true)) { in ck_spinlock_fas_lock()
83 } while (ck_pr_load_uint(&lock->value) == true); in ck_spinlock_fas_lock()
91 ck_spinlock_fas_lock_eb(struct ck_spinlock_fas *lock) in ck_spinlock_fas_lock_eb() argument
95 while (ck_pr_fas_uint(&lock->value, true) == true) in ck_spinlock_fas_lock_eb()
103 ck_spinlock_fas_unlock(struct ck_spinlock_fas *lock) in ck_spinlock_fas_unlock() argument
107 ck_pr_store_uint(&lock->value, false); in ck_spinlock_fas_unlock()