/linux/drivers/gpu/drm/ |
H A D | drm_gpuvm.c | 1478 vm_bo = kzalloc(sizeof(*vm_bo), GFP_KERNEL); in drm_gpuvm_bo_create() 1494 return vm_bo; in drm_gpuvm_bo_create() 1520 kfree(vm_bo); in drm_gpuvm_bo_destroy() 1546 if (vm_bo) in drm_gpuvm_bo_put() 1585 return vm_bo ? drm_gpuvm_bo_get(vm_bo) : NULL; in drm_gpuvm_bo_find() 1611 if (vm_bo) in drm_gpuvm_bo_obtain() 1615 if (!vm_bo) in drm_gpuvm_bo_obtain() 1621 return vm_bo; in drm_gpuvm_bo_obtain() 1649 if (vm_bo) { in drm_gpuvm_bo_obtain_prealloc() 1840 va->vm_bo = drm_gpuvm_bo_get(vm_bo); in drm_gpuva_link() [all …]
|
/linux/include/drm/ |
H A D | drm_gpuvm.h | 83 struct drm_gpuvm_bo *vm_bo; member 715 drm_gpuvm_bo_obtain_prealloc(struct drm_gpuvm_bo *vm_bo); 727 drm_gpuvm_bo_get(struct drm_gpuvm_bo *vm_bo) in drm_gpuvm_bo_get() argument 729 kref_get(&vm_bo->kref); in drm_gpuvm_bo_get() 730 return vm_bo; in drm_gpuvm_bo_get() 733 bool drm_gpuvm_bo_put(struct drm_gpuvm_bo *vm_bo); 752 struct drm_gpuvm_bo *vm_bo; in drm_gpuvm_bo_gem_evict() local 755 drm_gem_for_each_gpuvm_bo(vm_bo, obj) in drm_gpuvm_bo_gem_evict() 756 drm_gpuvm_bo_evict(vm_bo, evict); in drm_gpuvm_bo_gem_evict() 1143 void (*vm_bo_free)(struct drm_gpuvm_bo *vm_bo); [all …]
|
/linux/drivers/gpu/drm/amd/amdgpu/ |
H A D | amdgpu_vm.c | 182 vm_bo->moved = true; in amdgpu_vm_bo_evicted() 201 list_move(&vm_bo->vm_status, &vm_bo->vm->moved); in amdgpu_vm_bo_moved() 216 list_move(&vm_bo->vm_status, &vm_bo->vm->idle); in amdgpu_vm_bo_idle() 232 list_move(&vm_bo->vm_status, &vm_bo->vm->invalidated); in amdgpu_vm_bo_invalidated() 246 vm_bo->moved = true; in amdgpu_vm_bo_evicted_user() 248 list_move(&vm_bo->vm_status, &vm_bo->vm->evicted_user); in amdgpu_vm_bo_evicted_user() 264 list_move(&vm_bo->vm_status, &vm_bo->vm->relocated); in amdgpu_vm_bo_relocated() 282 list_move(&vm_bo->vm_status, &vm_bo->vm->done); in amdgpu_vm_bo_done() 306 list_move(&vm_bo->vm_status, &vm_bo->vm->moved); in amdgpu_vm_bo_reset_state_machine() 308 list_move(&vm_bo->vm_status, &vm_bo->vm->relocated); in amdgpu_vm_bo_reset_state_machine() [all …]
|
H A D | amdgpu_object.h | 105 struct amdgpu_vm_bo_base *vm_bo; member
|
H A D | amdgpu_vm_pt.c | 143 return parent->vm_bo; in amdgpu_vm_pt_parent() 589 entry->bo->vm_bo = NULL; in amdgpu_vm_pt_free()
|
H A D | amdgpu_amdkfd_gpuvm.c | 375 struct amdgpu_vm_bo_base *vm_bo; in amdgpu_amdkfd_remove_fence_on_pt_pd_bos() local 385 vm_bo = root->vm_bo; in amdgpu_amdkfd_remove_fence_on_pt_pd_bos() 386 if (!vm_bo) in amdgpu_amdkfd_remove_fence_on_pt_pd_bos() 389 vm = vm_bo->vm; in amdgpu_amdkfd_remove_fence_on_pt_pd_bos() 2223 bo, bo->vm_bo->vm->process_info->eviction_fence); in amdgpu_amdkfd_map_gtt_bo_to_gart()
|
H A D | amdgpu_dma_buf.c | 393 for (bo_base = bo->vm_bo; bo_base; bo_base = bo_base->next) { in amdgpu_dma_buf_move_notify()
|
H A D | amdgpu_object.c | 586 bo->vm_bo = NULL; in amdgpu_bo_create() 1360 WARN_ON(abo->vm_bo); in amdgpu_bo_release_notify()
|
H A D | amdgpu_gem.c | 884 for (base = robj->vm_bo; base; base = base->next) in amdgpu_gem_op_ioctl()
|
/linux/drivers/gpu/drm/panthor/ |
H A D | panthor_mmu.c | 199 struct drm_gpuvm_bo *vm_bo; member 1053 struct drm_gpuvm *vm = vm_bo->vm; in panthor_vm_bo_put() 1072 unpin = drm_gpuvm_bo_put(vm_bo); in panthor_vm_bo_put() 1102 if (op_ctx->map.vm_bo) in panthor_vm_cleanup_op_ctx() 1110 panthor_vm_bo_put(vma->base.vm_bo); in panthor_vm_cleanup_op_ctx() 1945 struct drm_gpuvm_bo *vm_bo) in panthor_vma_link() argument 1950 drm_gpuva_link(&vma->base, vm_bo); in panthor_vma_link() 1959 struct drm_gpuvm_bo *vm_bo = drm_gpuvm_bo_get(vma->base.vm_bo); in panthor_vma_unlink() local 1969 vma->base.vm_bo = vm_bo; in panthor_vma_unlink() 2007 op_ctx->map.vm_bo = NULL; in panthor_gpuva_sm_step_map() [all …]
|
/linux/drivers/gpu/drm/nouveau/ |
H A D | nouveau_uvmm.c | 65 struct drm_gpuvm_bo *vm_bo; member 1123 struct drm_gpuvm_bo *vm_bo = bop->vm_bo; in bind_link_gpuvas() local 1212 if (IS_ERR(op->vm_bo)) in nouveau_uvmm_bind_job_submit() 1213 return PTR_ERR(op->vm_bo); in nouveau_uvmm_bind_job_submit() 1215 drm_gpuvm_bo_extobj_add(op->vm_bo); in nouveau_uvmm_bind_job_submit() 1521 if (!IS_ERR_OR_NULL(op->vm_bo)) { in nouveau_uvmm_bind_job_cleanup() 1523 drm_gpuvm_bo_put(op->vm_bo); in nouveau_uvmm_bind_job_cleanup() 1759 struct drm_gpuvm_bo *vm_bo; in nouveau_uvmm_bo_map_all() local 1765 drm_gpuvm_bo_for_each_va(va, vm_bo) { in nouveau_uvmm_bo_map_all() 1778 struct drm_gpuvm_bo *vm_bo; in nouveau_uvmm_bo_unmap_all() local [all …]
|
/linux/drivers/gpu/drm/xe/ |
H A D | xe_vm.c | 383 vm_bo->evicted = false; in xe_gpuvm_validate() 814 struct drm_gpuvm_bo *vm_bo; in xe_vma_create() local 819 if (IS_ERR(vm_bo)) { in xe_vma_create() 821 return ERR_CAST(vm_bo); in xe_vma_create() 824 drm_gpuvm_bo_extobj_add(vm_bo); in xe_vma_create() 827 drm_gpuva_link(&vma->gpuva, vm_bo); in xe_vma_create() 828 drm_gpuvm_bo_put(vm_bo); in xe_vma_create() 2051 struct drm_gpuvm_bo *vm_bo; in vm_bind_ioctl_ops_create() local 2081 if (IS_ERR(vm_bo)) { in vm_bind_ioctl_ops_create() 2083 return ERR_CAST(vm_bo); in vm_bind_ioctl_ops_create() [all …]
|
H A D | xe_bo.c | 456 struct drm_gpuvm_bo *vm_bo; in xe_bo_trigger_rebind() local 470 drm_gem_for_each_gpuvm_bo(vm_bo, obj) { in xe_bo_trigger_rebind() 471 struct xe_vm *vm = gpuvm_to_vm(vm_bo->vm); in xe_bo_trigger_rebind() 475 drm_gpuvm_bo_evict(vm_bo, true); in xe_bo_trigger_rebind() 499 drm_gpuvm_bo_for_each_va(gpuva, vm_bo) { in xe_bo_trigger_rebind()
|