Lines Matching refs:spinlock
28 UV_UNUSED(static void uv_spinlock_init(uv_spinlock_t* spinlock));
29 UV_UNUSED(static void uv_spinlock_lock(uv_spinlock_t* spinlock));
30 UV_UNUSED(static void uv_spinlock_unlock(uv_spinlock_t* spinlock));
31 UV_UNUSED(static int uv_spinlock_trylock(uv_spinlock_t* spinlock));
33 UV_UNUSED(static void uv_spinlock_init(uv_spinlock_t* spinlock)) {
34 ACCESS_ONCE(int, spinlock->lock) = 0;
37 UV_UNUSED(static void uv_spinlock_lock(uv_spinlock_t* spinlock)) {
38 while (!uv_spinlock_trylock(spinlock)) cpu_relax();
41 UV_UNUSED(static void uv_spinlock_unlock(uv_spinlock_t* spinlock)) {
42 ACCESS_ONCE(int, spinlock->lock) = 0;
45 UV_UNUSED(static int uv_spinlock_trylock(uv_spinlock_t* spinlock)) {
50 return 0 == cmpxchgi(&spinlock->lock, 0, 1);