Lines Matching refs:avm
77 static bool kfd_mem_is_attached(struct amdgpu_vm *avm, in kfd_mem_is_attached() argument
83 if (entry->bo_va->base.vm == avm) in kfd_mem_is_attached()
1565 struct amdgpu_vm *avm, in amdgpu_amdkfd_gpuvm_acquire_process_vm() argument
1572 if (avm->process_info) in amdgpu_amdkfd_gpuvm_acquire_process_vm()
1576 ret = amdgpu_vm_make_compute(adev, avm); in amdgpu_amdkfd_gpuvm_acquire_process_vm()
1581 ret = init_kfd_vm(avm, process_info, ef); in amdgpu_amdkfd_gpuvm_acquire_process_vm()
1585 amdgpu_vm_set_task_info(avm); in amdgpu_amdkfd_gpuvm_acquire_process_vm()
1623 struct amdgpu_vm *avm = drm_priv_to_vm(drm_priv); in amdgpu_amdkfd_gpuvm_get_process_page_dir() local
1624 struct amdgpu_bo *pd = avm->root.bo; in amdgpu_amdkfd_gpuvm_get_process_page_dir()
1628 return avm->pd_phys_addr >> AMDGPU_GPU_PAGE_SHIFT; in amdgpu_amdkfd_gpuvm_get_process_page_dir()
1629 return avm->pd_phys_addr; in amdgpu_amdkfd_gpuvm_get_process_page_dir()
1714 struct amdgpu_vm *avm = drm_priv_to_vm(drm_priv); in amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu() local
1715 struct amdgpu_fpriv *fpriv = container_of(avm, struct amdgpu_fpriv, vm); in amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu()
1840 (*mem)->process_info = avm->process_info; in amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu()
1842 add_kgd_mem_to_kfd_bo_list(*mem, avm->process_info, user_addr); in amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu()
1859 mutex_lock(&avm->process_info->lock); in amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu()
1860 if (avm->process_info->eviction_fence && in amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu()
1861 !dma_fence_is_signaled(&avm->process_info->eviction_fence->base)) in amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu()
1863 &avm->process_info->eviction_fence->base); in amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu()
1864 mutex_unlock(&avm->process_info->lock); in amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu()
1877 remove_kgd_mem_from_kfd_bo_list(*mem, avm->process_info); in amdgpu_amdkfd_gpuvm_alloc_memory_of_gpu()
2019 struct amdgpu_vm *avm = drm_priv_to_vm(drm_priv); in amdgpu_amdkfd_gpuvm_map_memory_to_gpu() local
2058 avm, domain_string(domain)); in amdgpu_amdkfd_gpuvm_map_memory_to_gpu()
2060 if (!kfd_mem_is_attached(avm, mem)) { in amdgpu_amdkfd_gpuvm_map_memory_to_gpu()
2061 ret = kfd_mem_attach(adev, mem, avm, mem->aql_queue); in amdgpu_amdkfd_gpuvm_map_memory_to_gpu()
2066 ret = reserve_bo_and_vm(mem, avm, &ctx); in amdgpu_amdkfd_gpuvm_map_memory_to_gpu()
2079 ret = vm_validate_pt_pd_bos(avm, NULL); in amdgpu_amdkfd_gpuvm_map_memory_to_gpu()
2084 if (entry->bo_va->base.vm != avm || entry->is_mapped) in amdgpu_amdkfd_gpuvm_map_memory_to_gpu()
2097 ret = vm_update_pds(avm, ctx.sync); in amdgpu_amdkfd_gpuvm_map_memory_to_gpu()
2155 struct amdgpu_vm *avm = drm_priv_to_vm(drm_priv); in amdgpu_amdkfd_gpuvm_unmap_memory_from_gpu() local
2163 ret = reserve_bo_and_cond_vms(mem, avm, BO_VM_MAPPED, &ctx); in amdgpu_amdkfd_gpuvm_unmap_memory_from_gpu()
2172 ret = vm_validate_pt_pd_bos(avm, NULL); in amdgpu_amdkfd_gpuvm_unmap_memory_from_gpu()
2179 avm); in amdgpu_amdkfd_gpuvm_unmap_memory_from_gpu()
2182 if (entry->bo_va->base.vm != avm || !entry->is_mapped) in amdgpu_amdkfd_gpuvm_unmap_memory_from_gpu()
2371 struct amdgpu_vm *avm = drm_priv_to_vm(drm_priv); in import_obj_create() local
2413 (*mem)->process_info = avm->process_info; in import_obj_create()
2414 add_kgd_mem_to_kfd_bo_list(*mem, avm->process_info, false); in import_obj_create()
2418 mutex_lock(&avm->process_info->lock); in import_obj_create()
2419 if (avm->process_info->eviction_fence && in import_obj_create()
2420 !dma_fence_is_signaled(&avm->process_info->eviction_fence->base)) in import_obj_create()
2422 &avm->process_info->eviction_fence->base); in import_obj_create()
2423 mutex_unlock(&avm->process_info->lock); in import_obj_create()
2430 remove_kgd_mem_from_kfd_bo_list(*mem, avm->process_info); in import_obj_create()