Lines Matching refs:job
169 struct amdgpu_job *job) in amdgpu_vmid_gds_switch_needed() argument
171 return id->gds_base != job->gds_base || in amdgpu_vmid_gds_switch_needed()
172 id->gds_size != job->gds_size || in amdgpu_vmid_gds_switch_needed()
173 id->gws_base != job->gws_base || in amdgpu_vmid_gds_switch_needed()
174 id->gws_size != job->gws_size || in amdgpu_vmid_gds_switch_needed()
175 id->oa_base != job->oa_base || in amdgpu_vmid_gds_switch_needed()
176 id->oa_size != job->oa_size; in amdgpu_vmid_gds_switch_needed()
181 struct amdgpu_job *job) in amdgpu_vmid_compatible() argument
183 return id->pd_gpu_addr == job->vm_pd_addr && in amdgpu_vmid_compatible()
184 !amdgpu_vmid_gds_switch_needed(id, job); in amdgpu_vmid_compatible()
272 struct amdgpu_job *job, in amdgpu_vmid_grab_reserved() argument
286 !amdgpu_vmid_compatible(*id, job) || in amdgpu_vmid_grab_reserved()
316 r = amdgpu_sync_fence(&(*id)->active, &job->base.s_fence->finished, in amdgpu_vmid_grab_reserved()
321 job->vm_needs_flush = needs_flush; in amdgpu_vmid_grab_reserved()
322 job->spm_update_needed = true; in amdgpu_vmid_grab_reserved()
338 struct amdgpu_job *job, in amdgpu_vmid_grab_used() argument
348 job->vm_needs_flush = vm->use_cpu_for_update; in amdgpu_vmid_grab_used()
358 if (!amdgpu_vmid_compatible(*id, job)) in amdgpu_vmid_grab_used()
376 &job->base.s_fence->finished, in amdgpu_vmid_grab_used()
381 job->vm_needs_flush |= needs_flush; in amdgpu_vmid_grab_used()
400 struct amdgpu_job *job, struct dma_fence **fence) in amdgpu_vmid_grab() argument
415 r = amdgpu_vmid_grab_reserved(vm, ring, job, &id, fence); in amdgpu_vmid_grab()
419 r = amdgpu_vmid_grab_used(vm, ring, job, &id); in amdgpu_vmid_grab()
429 &job->base.s_fence->finished, in amdgpu_vmid_grab()
434 job->vm_needs_flush = true; in amdgpu_vmid_grab()
440 job->gds_switch_needed = amdgpu_vmid_gds_switch_needed(id, job); in amdgpu_vmid_grab()
441 if (job->vm_needs_flush) { in amdgpu_vmid_grab()
446 job->vmid = id - id_mgr->ids; in amdgpu_vmid_grab()
447 job->pasid = vm->pasid; in amdgpu_vmid_grab()
449 id->gds_base = job->gds_base; in amdgpu_vmid_grab()
450 id->gds_size = job->gds_size; in amdgpu_vmid_grab()
451 id->gws_base = job->gws_base; in amdgpu_vmid_grab()
452 id->gws_size = job->gws_size; in amdgpu_vmid_grab()
453 id->oa_base = job->oa_base; in amdgpu_vmid_grab()
454 id->oa_size = job->oa_size; in amdgpu_vmid_grab()
455 id->pd_gpu_addr = job->vm_pd_addr; in amdgpu_vmid_grab()
458 trace_amdgpu_vm_grab_id(vm, ring, job); in amdgpu_vmid_grab()