Home
last modified time | relevance | path

Searched refs:svm_bo (Results 1 - 5 of 5) sorted by relevance

/kernel/linux/linux-6.6/drivers/gpu/drm/amd/amdkfd/
H A Dkfd_svm.c87 * Remove the svm_range from the svms and svm_bo lists and the svms
97 if (prange->svm_bo) { in svm_range_unlink()
98 spin_lock(&prange->svm_bo->list_lock); in svm_range_unlink()
100 spin_unlock(&prange->svm_bo->list_lock); in svm_range_unlink()
183 struct amdgpu_device *bo_adev = prange->svm_bo->node->adev; in svm_range_dma_map_dev()
359 static bool svm_bo_ref_unless_zero(struct svm_range_bo *svm_bo) in svm_bo_ref_unless_zero() argument
361 if (!svm_bo || !kref_get_unless_zero(&svm_bo->kref)) in svm_bo_ref_unless_zero()
369 struct svm_range_bo *svm_bo; in svm_range_bo_release() local
371 svm_bo in svm_range_bo_release()
404 struct svm_range_bo *svm_bo; svm_range_bo_wq_release() local
412 struct svm_range_bo *svm_bo; svm_range_bo_release_async() local
420 svm_range_bo_unref_async(struct svm_range_bo *svm_bo) svm_range_bo_unref_async() argument
425 svm_range_bo_unref(struct svm_range_bo *svm_bo) svm_range_bo_unref() argument
462 struct svm_range_bo *svm_bo; svm_range_validate_svm_bo() local
504 struct svm_range_bo *svm_bo; svm_range_bo_new() local
522 struct svm_range_bo *svm_bo; svm_range_vram_node_new() local
3441 struct svm_range_bo *svm_bo; svm_range_evict_svm_bo_worker() local
[all...]
H A Dkfd_svm.h84 * @svm_bo: struct to manage splited amdgpu_bo
85 * @svm_bo_list:link list node, to scan all ranges which share same svm_bo
118 struct svm_range_bo *svm_bo; member
150 static inline struct svm_range_bo *svm_range_bo_ref(struct svm_range_bo *svm_bo) in svm_range_bo_ref() argument
152 if (svm_bo) in svm_range_bo_ref()
153 kref_get(&svm_bo->kref); in svm_range_bo_ref()
155 return svm_bo; in svm_range_bo_ref()
205 void svm_range_bo_unref_async(struct svm_range_bo *svm_bo);
H A Dkfd_migrate.c218 svm_range_bo_ref(prange->svm_bo); in svm_migrate_get_vram_page()
219 page->zone_device_data = prange->svm_bo; in svm_migrate_get_vram_page()
557 struct svm_range_bo *svm_bo = page->zone_device_data; in svm_migrate_page_free() local
559 if (svm_bo) { in svm_migrate_page_free()
560 pr_debug_ratelimited("ref: %d\n", kref_read(&svm_bo->kref)); in svm_migrate_page_free()
561 svm_range_bo_unref_async(svm_bo); in svm_migrate_page_free()
893 struct svm_range_bo *svm_bo; in svm_migrate_to_ram() local
901 svm_bo = vmf->page->zone_device_data; in svm_migrate_to_ram()
902 if (!svm_bo) { in svm_migrate_to_ram()
906 if (!mmget_not_zero(svm_bo in svm_migrate_to_ram()
[all...]
/kernel/linux/linux-6.6/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_amdkfd_fence.c65 struct svm_range_bo *svm_bo) in amdgpu_amdkfd_fence_create()
78 fence->svm_bo = svm_bo; in amdgpu_amdkfd_fence_create()
129 if (!fence->svm_bo) { in amdkfd_fence_enable_signaling()
177 else if (fence->mm == mm && !fence->svm_bo) in amdkfd_fence_check_mm()
63 amdgpu_amdkfd_fence_create(u64 context, struct mm_struct *mm, struct svm_range_bo *svm_bo) amdgpu_amdkfd_fence_create() argument
H A Damdgpu_amdkfd.h96 struct svm_range_bo *svm_bo; member
184 struct svm_range_bo *svm_bo);

Completed in 6 milliseconds