/linux/drivers/dma-buf/ |
H A D | dma-resv.c | 71 struct dma_resv *resv, struct dma_fence **fence, in dma_resv_list_entry() 138 void dma_resv_init(struct dma_resv *obj) in dma_resv_init() 150 void dma_resv_fini(struct dma_resv *obj) in dma_resv_fini() 162 static inline struct dma_resv_list *dma_resv_fences_list(struct dma_resv *obj) in dma_resv_fences_list() 182 int dma_resv_reserve_fences(struct dma_resv *obj, unsigned int num_fences) in dma_resv_reserve_fences() 263 void dma_resv_reset_max_fences(struct dma_resv *obj) in dma_resv_reset_max_fences() 287 void dma_resv_add_fence(struct dma_resv *obj, struct dma_fence *fence, in dma_resv_add_fence() 342 void dma_resv_replace_fences(struct dma_resv *obj, uint64_t context, in dma_resv_replace_fences() 520 int dma_resv_copy_fences(struct dma_resv *dst, struct dma_resv *src) in dma_resv_copy_fences() 568 int dma_resv_get_fences(struct dma_resv *obj, enum dma_resv_usage usage, in dma_resv_get_fences() [all …]
|
H A D | st-dma-resv.c | 40 struct dma_resv resv; in sanitycheck() 66 struct dma_resv resv; in test_signaling() 114 struct dma_resv resv; in test_for_each() 175 struct dma_resv resv; in test_for_each_unlocked() 248 struct dma_resv resv; in test_get_fences() 296 int dma_resv(void) in dma_resv() function
|
H A D | selftests.h | 16 selftest(dma_resv, dma_resv)
|
H A D | dma-buf.c | 104 if (dmabuf->resv == (struct dma_resv *)&dmabuf[1]) in dma_buf_release() 235 static bool dma_buf_poll_add_cb(struct dma_resv *resv, bool write, in dma_buf_poll_add_cb() 257 struct dma_resv *resv; in dma_buf_poll() 628 struct dma_resv *resv = exp_info->resv; in dma_buf_export() 656 alloc_size += sizeof(struct dma_resv); in dma_buf_export() 678 dmabuf->resv = (struct dma_resv *)&dmabuf[1]; in dma_buf_export() 1379 struct dma_resv *resv = dmabuf->resv; in __dma_buf_begin_cpu_access()
|
/linux/drivers/gpu/drm/amd/amdgpu/ |
H A D | amdgpu_sync.h | 30 struct dma_resv; 52 struct dma_resv *resv, enum amdgpu_sync_mode mode, 54 int amdgpu_sync_kfd(struct amdgpu_sync *sync, struct dma_resv *resv);
|
H A D | amdgpu_ttm.h | 167 struct dma_resv *resv, 174 struct dma_resv *resv, 177 struct dma_resv *resv, 181 struct dma_resv *resv,
|
H A D | amdgpu_sync.c | 236 struct dma_resv *resv, enum amdgpu_sync_mode mode, in amdgpu_sync_resv() 271 int amdgpu_sync_kfd(struct amdgpu_sync *sync, struct dma_resv *resv) in amdgpu_sync_kfd()
|
H A D | amdgpu_ids.h | 76 void amdgpu_pasid_free_delayed(struct dma_resv *resv,
|
H A D | amdgpu_object.h | 57 struct dma_resv *resv; 302 int amdgpu_bo_sync_wait_resv(struct amdgpu_device *adev, struct dma_resv *resv,
|
H A D | amdgpu_gem.h | 47 struct dma_resv *resv,
|
/linux/Documentation/gpu/ |
H A D | drm-vm-bind-locking.rst | 48 * ``dma_resv``: A struct dma_resv (a.k.a reservation object) that is used 50 gpu_vm or a GEM object. The dma_resv contains an array / list 52 additional dma_fences to the dma_resv. The lock is of a type that 64 single VM. Local GEM objects share the gpu_vm's dma_resv. 73 dma_resv object and hence the dma_resv lock. So, even with a huge 106 object's dma_resv, but some drivers protects this list differently, 112 with the dma_resv locks, a special scheme is needed when iterating 122 same as the GEM object's dma_resv, but if the driver 154 pseudo-code. In particular, the dma_resv deadlock avoidance algorithm 155 as well as reserving memory for dma_resv fences is left out. [all …]
|
/linux/drivers/gpu/drm/i915/ |
H A D | i915_deps.h | 13 struct dma_resv; 40 int i915_deps_add_resv(struct i915_deps *deps, struct dma_resv *resv,
|
H A D | i915_sw_fence.h | 19 struct dma_resv; 93 struct dma_resv *resv,
|
H A D | TODO.txt | 17 with VM_BIND using userspace should be removed. Looking at amdgpu dma_resv on 20 This is the matching task on the vm side compared to ttm/dma_resv on the
|
/linux/include/drm/ttm/ |
H A D | ttm_bo.h | 189 struct dma_resv *resv; 403 struct sg_table *sg, struct dma_resv *resv, 408 struct sg_table *sg, struct dma_resv *resv,
|
/linux/include/linux/ |
H A D | dma-buf.h | 429 struct dma_resv *resv; 544 struct dma_resv *resv;
|
/linux/drivers/gpu/drm/nouveau/ |
H A D | nouveau_bo.h | 68 struct sg_table *sg, struct dma_resv *robj); 71 struct dma_resv *robj,
|
/linux/drivers/gpu/drm/i915/gem/ |
H A D | i915_gem_wait.c | 36 i915_gem_object_boost(struct dma_resv *resv, unsigned int flags) in i915_gem_object_boost() 67 i915_gem_object_wait_reservation(struct dma_resv *resv, in i915_gem_object_wait_reservation()
|
/linux/drivers/gpu/drm/loongson/ |
H A D | lsdc_gem.h | 35 struct dma_resv *resv);
|
H A D | lsdc_gem.c | 145 struct dma_resv *resv) in lsdc_gem_object_create() 179 struct dma_resv *resv = attach->dmabuf->resv; in lsdc_prime_import_sg_table()
|
/linux/drivers/gpu/drm/radeon/ |
H A D | radeon_asic.h | 89 struct dma_resv *resv); 160 struct dma_resv *resv); 350 struct dma_resv *resv); 354 struct dma_resv *resv); 475 struct dma_resv *resv); 549 struct dma_resv *resv); 728 struct dma_resv *resv); 799 struct dma_resv *resv); 803 struct dma_resv *resv);
|
/linux/include/drm/ |
H A D | gpu_scheduler.h | 54 struct dma_resv; 575 struct dma_resv *resv,
|
H A D | drm_gem.h | 384 struct dma_resv *resv; 393 struct dma_resv _resv;
|
/linux/drivers/gpu/drm/ttm/tests/ |
H A D | ttm_kunit_helpers.h | 40 struct dma_resv *obj);
|
/linux/drivers/gpu/drm/lima/ |
H A D | lima_gem.h | 32 static inline struct dma_resv *lima_bo_resv(struct lima_bo *bo) in lima_bo_resv()
|