Lines Matching refs:fences

142 	RCU_INIT_POINTER(obj->fences, NULL);  in dma_resv_init()
156 dma_resv_list_free(rcu_dereference_protected(obj->fences, true)); in dma_resv_fini()
164 return rcu_dereference_check(obj->fences, dma_resv_held(obj)); in dma_resv_fences_list()
228 rcu_assign_pointer(obj->fences, new); in dma_resv_reserve_fences()
258 struct dma_resv_list *fences = dma_resv_fences_list(obj); in dma_resv_reset_max_fences() local
263 if (fences) in dma_resv_reset_max_fences()
264 fences->max_fences = fences->num_fences; in dma_resv_reset_max_fences()
363 cursor->fences = dma_resv_fences_list(cursor->obj); in dma_resv_iter_restart_unlocked()
364 if (cursor->fences) in dma_resv_iter_restart_unlocked()
365 cursor->num_fences = cursor->fences->num_fences; in dma_resv_iter_restart_unlocked()
372 if (!cursor->fences) in dma_resv_iter_walk_unlocked()
385 dma_resv_list_entry(cursor->fences, cursor->index++, in dma_resv_iter_walk_unlocked()
418 } while (dma_resv_fences_list(cursor->obj) != cursor->fences); in dma_resv_iter_first_unlocked()
441 restart = dma_resv_fences_list(cursor->obj) != cursor->fences; in dma_resv_iter_next_unlocked()
447 } while (dma_resv_fences_list(cursor->obj) != cursor->fences); in dma_resv_iter_next_unlocked()
470 cursor->fences = dma_resv_fences_list(cursor->obj); in dma_resv_iter_first()
494 if (!cursor->fences || in dma_resv_iter_next()
495 cursor->index >= cursor->fences->num_fences) in dma_resv_iter_next()
498 dma_resv_list_entry(cursor->fences, cursor->index++, in dma_resv_iter_next()
543 list = rcu_replace_pointer(dst->fences, list, dma_resv_held(dst)); in dma_resv_copy_fences()
562 unsigned int *num_fences, struct dma_fence ***fences) in dma_resv_get_fences() argument
568 *fences = NULL; in dma_resv_get_fences()
577 dma_fence_put((*fences)[--(*num_fences)]); in dma_resv_get_fences()
582 *fences = krealloc_array(*fences, count, in dma_resv_get_fences()
585 if (count && !*fences) { in dma_resv_get_fences()
591 (*fences)[(*num_fences)++] = dma_fence_get(fence); in dma_resv_get_fences()
618 struct dma_fence **fences; in dma_resv_get_singleton() local
622 r = dma_resv_get_fences(obj, usage, &count, &fences); in dma_resv_get_singleton()
632 *fence = fences[0]; in dma_resv_get_singleton()
633 kfree(fences); in dma_resv_get_singleton()
637 array = dma_fence_array_create(count, fences, in dma_resv_get_singleton()
642 dma_fence_put(fences[count]); in dma_resv_get_singleton()
643 kfree(fences); in dma_resv_get_singleton()