Lines Matching refs:obj

82 #define reservation_object_held(obj) lockdep_is_held(&(obj)->lock.base)  argument
83 #define reservation_object_assert_held(obj) \ argument
84 lockdep_assert_held(&(obj)->lock.base)
91 reservation_object_init(struct reservation_object *obj) in reservation_object_init() argument
93 ww_mutex_init(&obj->lock, &reservation_ww_class); in reservation_object_init()
95 __seqcount_init(&obj->seq, reservation_seqcount_string, &reservation_seqcount_class); in reservation_object_init()
96 RCU_INIT_POINTER(obj->fence, NULL); in reservation_object_init()
97 RCU_INIT_POINTER(obj->fence_excl, NULL); in reservation_object_init()
98 obj->staged = NULL; in reservation_object_init()
106 reservation_object_fini(struct reservation_object *obj) in reservation_object_fini() argument
116 excl = rcu_dereference_protected(obj->fence_excl, 1); in reservation_object_fini()
120 fobj = rcu_dereference_protected(obj->fence, 1); in reservation_object_fini()
127 kfree(obj->staged); in reservation_object_fini()
129 ww_mutex_destroy(&obj->lock); in reservation_object_fini()
141 reservation_object_get_list(struct reservation_object *obj) in reservation_object_get_list() argument
143 return rcu_dereference_protected(obj->fence, in reservation_object_get_list()
144 reservation_object_held(obj)); in reservation_object_get_list()
163 reservation_object_lock(struct reservation_object *obj, in reservation_object_lock() argument
166 return ww_mutex_lock(&obj->lock, ctx); in reservation_object_lock()
184 reservation_object_trylock(struct reservation_object *obj) in reservation_object_trylock() argument
186 return ww_mutex_trylock(&obj->lock); in reservation_object_trylock()
196 reservation_object_unlock(struct reservation_object *obj) in reservation_object_unlock() argument
198 ww_mutex_unlock(&obj->lock); in reservation_object_unlock()
213 reservation_object_get_excl(struct reservation_object *obj) in reservation_object_get_excl() argument
215 return rcu_dereference_protected(obj->fence_excl, in reservation_object_get_excl()
216 reservation_object_held(obj)); in reservation_object_get_excl()
231 reservation_object_get_excl_rcu(struct reservation_object *obj) in reservation_object_get_excl_rcu() argument
235 if (!rcu_access_pointer(obj->fence_excl)) in reservation_object_get_excl_rcu()
239 fence = dma_fence_get_rcu_safe(&obj->fence_excl); in reservation_object_get_excl_rcu()
245 int reservation_object_reserve_shared(struct reservation_object *obj);
246 void reservation_object_add_shared_fence(struct reservation_object *obj,
249 void reservation_object_add_excl_fence(struct reservation_object *obj,
252 int reservation_object_get_fences_rcu(struct reservation_object *obj,
260 long reservation_object_wait_timeout_rcu(struct reservation_object *obj,
264 bool reservation_object_test_signaled_rcu(struct reservation_object *obj,