Lines Matching refs:zr_refcount
55 zrl->zr_refcount = 0; in zrl_init()
66 ASSERT0(zrl->zr_refcount); in zrl_destroy()
69 zrl->zr_refcount = ZRL_DESTROYED; in zrl_destroy()
77 uint32_t n = (uint32_t)zrl->zr_refcount; in zrl_add_impl()
80 (uint32_t *)&zrl->zr_refcount, n, n + 1); in zrl_add_impl()
99 while (zrl->zr_refcount == ZRL_LOCKED) { in zrl_add_impl()
114 int32_t n = atomic_dec_32_nv((uint32_t *)&zrl->zr_refcount); in zrl_remove()
117 atomic_dec_32((uint32_t *)&zrl->zr_refcount); in zrl_remove()
124 uint32_t n = (uint32_t)zrl->zr_refcount; in zrl_tryenter()
128 (uint32_t *)&zrl->zr_refcount, 0, ZRL_LOCKED); in zrl_tryenter()
146 ASSERT3S(zrl->zr_refcount, ==, ZRL_LOCKED); in zrl_exit()
154 zrl->zr_refcount = 0; in zrl_exit()
162 ASSERT3S(zrl->zr_refcount, >, ZRL_DESTROYED); in zrl_is_zero()
164 return (zrl->zr_refcount <= 0); in zrl_is_zero()
170 ASSERT3S(zrl->zr_refcount, >, ZRL_DESTROYED); in zrl_is_locked()
172 return (zrl->zr_refcount == ZRL_LOCKED); in zrl_is_locked()