Lines Matching defs:fence
43 #include <linux/dma-fence.h>
54 * @shared_max: for growing shared fence table
55 * @shared: shared fence table
67 * @fence_excl: the exclusive fence, if there is one currently
68 * @fence: list of current shared fences
75 struct dma_resv_list __rcu *fence;
83 * shared fence list, with update-side lock held
86 * Returns the shared fence list. Does NOT take references to
87 * the fence. The obj->lock must be held.
91 return rcu_dereference_protected(obj->fence,
219 /* Test shared fence slot reservation */
220 if (rcu_access_pointer(obj->fence)) {
221 struct dma_resv_list *fence = dma_resv_get_list(obj);
223 fence->shared_max = fence->shared_count;
231 * exclusive fence, with update-side lock held
234 * Returns the exclusive fence (if any). Does NOT take a
239 * The exclusive fence or NULL
250 * exclusive fence, without lock held.
253 * If there is an exclusive fence, this atomically increments it's
257 * The exclusive fence or NULL if none
262 struct dma_fence *fence;
268 fence = dma_fence_get_rcu_safe(&obj->fence_excl);
271 return fence;
277 void dma_resv_add_shared_fence(struct dma_resv *obj, struct dma_fence *fence);
279 void dma_resv_add_excl_fence(struct dma_resv *obj, struct dma_fence *fence);