Lines Matching refs:shared
69 list = kmalloc(offsetof(typeof(*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()
242 old = rcu_dereference_protected(fobj->shared[i], in dma_resv_add_shared_fence()
254 RCU_INIT_POINTER(fobj->shared[i], fence); in dma_resv_add_shared_fence()
297 dma_fence_put(rcu_dereference_protected(old->shared[i], in dma_resv_add_excl_fence()
343 fence = rcu_dereference(src_list->shared[i]); in dma_resv_copy_fences()
359 rcu_assign_pointer(dst_list->shared[dst_list->shared_count++], fence); in dma_resv_copy_fences()
404 struct dma_fence **shared = NULL; in dma_resv_get_fences_rcu() local
425 sz += sizeof(*shared) * fobj->shared_max; in dma_resv_get_fences_rcu()
428 sz += sizeof(*shared); in dma_resv_get_fences_rcu()
433 nshared = krealloc(shared, sz, in dma_resv_get_fences_rcu()
441 nshared = krealloc(shared, sz, GFP_KERNEL); in dma_resv_get_fences_rcu()
443 shared = nshared; in dma_resv_get_fences_rcu()
450 shared = nshared; in dma_resv_get_fences_rcu()
453 shared[i] = rcu_dereference(fobj->shared[i]); in dma_resv_get_fences_rcu()
454 if (!dma_fence_get_rcu(shared[i])) in dma_resv_get_fences_rcu()
461 dma_fence_put(shared[i]); in dma_resv_get_fences_rcu()
474 shared[shared_count++] = fence_excl; in dma_resv_get_fences_rcu()
477 kfree(shared); in dma_resv_get_fences_rcu()
478 shared = NULL; in dma_resv_get_fences_rcu()
482 *pshared = shared; in dma_resv_get_fences_rcu()
535 struct dma_fence *lfence = rcu_dereference(fobj->shared[i]); in dma_resv_wait_timeout_rcu()
621 struct dma_fence *fence = rcu_dereference(fobj->shared[i]); in dma_resv_test_signaled_rcu()