Lines Matching refs:shared
69 list = kmalloc(struct_size(list, shared, shared_max), GFP_KERNEL); in dma_resv_list_alloc()
73 list->shared_max = (ksize(list) - offsetof(typeof(*list), shared)) / in dma_resv_list_alloc()
74 sizeof(*list->shared); in dma_resv_list_alloc()
93 dma_fence_put(rcu_dereference_protected(list->shared[i], true)); in dma_resv_list_free()
180 fence = rcu_dereference_protected(old->shared[i], in dma_resv_reserve_shared()
183 RCU_INIT_POINTER(new->shared[--k], fence); in dma_resv_reserve_shared()
185 RCU_INIT_POINTER(new->shared[j++], fence); in dma_resv_reserve_shared()
206 fence = rcu_dereference_protected(new->shared[i], in dma_resv_reserve_shared()
265 old = rcu_dereference_protected(fobj->shared[i], in dma_resv_add_shared_fence()
277 RCU_INIT_POINTER(fobj->shared[i], fence); in dma_resv_add_shared_fence()
319 dma_fence_put(rcu_dereference_protected(old->shared[i], in dma_resv_add_excl_fence()
378 cursor->fence = rcu_dereference(fences->shared[idx]); in dma_resv_iter_walk_unlocked()
476 return rcu_dereference_protected(cursor->fences->shared[idx], in dma_resv_iter_next()
525 RCU_INIT_POINTER(list->shared[list->shared_count++], f); in dma_resv_copy_fences()
555 unsigned int *shared_count, struct dma_fence ***shared) in dma_resv_get_fences() argument
561 *shared = NULL; in dma_resv_get_fences()
573 dma_fence_put((*shared)[--(*shared_count)]); in dma_resv_get_fences()
582 *shared = krealloc_array(*shared, count, in dma_resv_get_fences()
585 if (count && !*shared) { in dma_resv_get_fences()
595 (*shared)[(*shared_count)++] = fence; in dma_resv_get_fences()