Lines Matching refs:process

43 					 struct amdgpu_mes_process *process,  in amdgpu_mes_kernel_doorbell_get()  argument
68 struct amdgpu_mes_process *process, in amdgpu_mes_kernel_doorbell_free() argument
223 struct amdgpu_mes_process *process; in amdgpu_mes_create_process() local
227 process = kzalloc(sizeof(struct amdgpu_mes_process), GFP_KERNEL); in amdgpu_mes_create_process()
228 if (!process) { in amdgpu_mes_create_process()
236 &process->proc_ctx_bo, in amdgpu_mes_create_process()
237 &process->proc_ctx_gpu_addr, in amdgpu_mes_create_process()
238 &process->proc_ctx_cpu_ptr); in amdgpu_mes_create_process()
243 memset(process->proc_ctx_cpu_ptr, 0, AMDGPU_MES_PROC_CTX_SIZE); in amdgpu_mes_create_process()
252 r = idr_alloc(&adev->mes.pasid_idr, process, pasid, pasid + 1, in amdgpu_mes_create_process()
259 INIT_LIST_HEAD(&process->gang_list); in amdgpu_mes_create_process()
260 process->vm = vm; in amdgpu_mes_create_process()
261 process->pasid = pasid; in amdgpu_mes_create_process()
262 process->process_quantum = adev->mes.default_process_quantum; in amdgpu_mes_create_process()
263 process->pd_gpu_addr = amdgpu_bo_gpu_offset(vm->root.bo); in amdgpu_mes_create_process()
270 amdgpu_bo_free_kernel(&process->proc_ctx_bo, in amdgpu_mes_create_process()
271 &process->proc_ctx_gpu_addr, in amdgpu_mes_create_process()
272 &process->proc_ctx_cpu_ptr); in amdgpu_mes_create_process()
274 kfree(process); in amdgpu_mes_create_process()
280 struct amdgpu_mes_process *process; in amdgpu_mes_destroy_process() local
293 process = idr_find(&adev->mes.pasid_idr, pasid); in amdgpu_mes_destroy_process()
294 if (!process) { in amdgpu_mes_destroy_process()
301 list_for_each_entry_safe(gang, tmp1, &process->gang_list, list) { in amdgpu_mes_destroy_process()
323 list_for_each_entry_safe(gang, tmp1, &process->gang_list, list) { in amdgpu_mes_destroy_process()
337 amdgpu_bo_free_kernel(&process->proc_ctx_bo, in amdgpu_mes_destroy_process()
338 &process->proc_ctx_gpu_addr, in amdgpu_mes_destroy_process()
339 &process->proc_ctx_cpu_ptr); in amdgpu_mes_destroy_process()
340 kfree(process); in amdgpu_mes_destroy_process()
347 struct amdgpu_mes_process *process; in amdgpu_mes_add_gang() local
375 process = idr_find(&adev->mes.pasid_idr, pasid); in amdgpu_mes_add_gang()
376 if (!process) { in amdgpu_mes_add_gang()
394 gang->process = process; in amdgpu_mes_add_gang()
400 list_add_tail(&gang->list, &process->gang_list); in amdgpu_mes_add_gang()
454 struct amdgpu_mes_process *process; in amdgpu_mes_suspend() local
467 idr_for_each_entry(idp, process, pasid) { in amdgpu_mes_suspend()
468 list_for_each_entry(gang, &process->gang_list, list) { in amdgpu_mes_suspend()
483 struct amdgpu_mes_process *process; in amdgpu_mes_resume() local
496 idr_for_each_entry(idp, process, pasid) { in amdgpu_mes_resume()
497 list_for_each_entry(gang, &process->gang_list, list) { in amdgpu_mes_resume()
625 r = amdgpu_mes_kernel_doorbell_get(adev, gang->process, in amdgpu_mes_add_hw_queue()
635 queue_input.process_id = gang->process->pasid; in amdgpu_mes_add_hw_queue()
638 adev->vm_manager.vram_base_offset + gang->process->pd_gpu_addr - in amdgpu_mes_add_hw_queue()
644 queue_input.process_quantum = gang->process->process_quantum; in amdgpu_mes_add_hw_queue()
645 queue_input.process_context_addr = gang->process->proc_ctx_gpu_addr; in amdgpu_mes_add_hw_queue()
667 gang->process->pasid, gang_id, qprops->queue_type, in amdgpu_mes_add_hw_queue()
683 amdgpu_mes_kernel_doorbell_free(adev, gang->process, in amdgpu_mes_add_hw_queue()
738 amdgpu_mes_kernel_doorbell_free(adev, gang->process, in amdgpu_mes_remove_hw_queue()
1014 pasid = gang->process->pasid; in amdgpu_mes_add_ring()
1061 dma_fence_wait(gang->process->vm->last_update, false); in amdgpu_mes_add_ring()