Lines Matching refs:lockref
37 if (lockref_get_not_zero(&grp->lockref)) in erofs_workgroup_get()
40 spin_lock(&grp->lockref.lock); in erofs_workgroup_get()
41 if (__lockref_is_dead(&grp->lockref)) { in erofs_workgroup_get()
42 spin_unlock(&grp->lockref.lock); in erofs_workgroup_get()
46 if (!grp->lockref.count++) in erofs_workgroup_get()
48 spin_unlock(&grp->lockref.lock); in erofs_workgroup_get()
84 lockref_get(&grp->lockref); in erofs_insert_workgroup()
99 lockref_put_return(&grp->lockref); in erofs_insert_workgroup()
114 if (lockref_put_or_lock(&grp->lockref)) in erofs_workgroup_put()
117 DBG_BUGON(__lockref_is_dead(&grp->lockref)); in erofs_workgroup_put()
118 if (grp->lockref.count == 1) in erofs_workgroup_put()
120 --grp->lockref.count; in erofs_workgroup_put()
121 spin_unlock(&grp->lockref.lock); in erofs_workgroup_put()
129 spin_lock(&grp->lockref.lock); in erofs_try_to_release_workgroup()
130 if (grp->lockref.count) in erofs_try_to_release_workgroup()
148 lockref_mark_dead(&grp->lockref); in erofs_try_to_release_workgroup()
151 spin_unlock(&grp->lockref.lock); in erofs_try_to_release_workgroup()