Home
last modified time | relevance | path

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

/openbmc/linux/drivers/gpu/drm/amd/amdkfd/
H A Dkfd_svm.c97 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 = container_of(kref, struct svm_range_bo, kref); in svm_range_bo_release()
372 pr_debug("svm_bo 0x%p\n", svm_bo); in svm_range_bo_release()
374 spin_lock(&svm_bo->list_lock); in svm_range_bo_release()
[all …]
H A Dkfd_svm.h118 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()
571 struct svm_range_bo *svm_bo = page->zone_device_data; in svm_migrate_page_free() local
573 if (svm_bo) { in svm_migrate_page_free()
574 pr_debug_ratelimited("ref: %d\n", kref_read(&svm_bo->kref)); in svm_migrate_page_free()
575 svm_range_bo_unref_async(svm_bo); in svm_migrate_page_free()
907 struct svm_range_bo *svm_bo; in svm_migrate_to_ram() local
915 svm_bo = vmf->page->zone_device_data; in svm_migrate_to_ram()
916 if (!svm_bo) { in svm_migrate_to_ram()
920 if (!mmget_not_zero(svm_bo->eviction_fence->mm)) { in svm_migrate_to_ram()
[all …]
/openbmc/linux/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_amdkfd_fence.c65 struct svm_range_bo *svm_bo) in amdgpu_amdkfd_fence_create() argument
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()
H A Damdgpu_amdkfd.h96 struct svm_range_bo *svm_bo; member
184 struct svm_range_bo *svm_bo);