Lines Matching defs:job
170 struct amdgpu_job *job)
172 return id->gds_base != job->gds_base ||
173 id->gds_size != job->gds_size ||
174 id->gws_base != job->gws_base ||
175 id->gws_size != job->gws_size ||
176 id->oa_base != job->oa_base ||
177 id->oa_size != job->oa_size;
180 /* Check if the id is compatible with the job */
182 struct amdgpu_job *job)
184 return id->pd_gpu_addr == job->vm_pd_addr &&
185 !amdgpu_vmid_gds_switch_needed(id, job);
192 * @ring: ring we want to submit job to
266 * @ring: ring we want to submit job to
267 * @job: job who wants to use the VMID
275 struct amdgpu_job *job,
289 !amdgpu_vmid_compatible(*id, job) ||
314 r = amdgpu_sync_fence(&(*id)->active, &job->base.s_fence->finished);
318 job->vm_needs_flush = needs_flush;
319 job->spm_update_needed = true;
327 * @ring: ring we want to submit job to
328 * @job: job who wants to use the VMID
336 struct amdgpu_job *job,
347 job->vm_needs_flush = vm->use_cpu_for_update;
357 if (!amdgpu_vmid_compatible(*id, job))
375 &job->base.s_fence->finished);
379 job->vm_needs_flush |= needs_flush;
391 * @ring: ring we want to submit job to
392 * @job: job who wants to use the VMID
398 struct amdgpu_job *job, struct dma_fence **fence)
413 r = amdgpu_vmid_grab_reserved(vm, ring, job, &id, fence);
417 r = amdgpu_vmid_grab_used(vm, ring, job, &id, fence);
427 &job->base.s_fence->finished);
431 job->vm_needs_flush = true;
437 job->gds_switch_needed = amdgpu_vmid_gds_switch_needed(id, job);
438 if (job->vm_needs_flush) {
443 job->vmid = id - id_mgr->ids;
444 job->pasid = vm->pasid;
446 id->gds_base = job->gds_base;
447 id->gds_size = job->gds_size;
448 id->gws_base = job->gws_base;
449 id->gws_size = job->gws_size;
450 id->oa_base = job->oa_base;
451 id->oa_size = job->oa_size;
452 id->pd_gpu_addr = job->vm_pd_addr;
455 trace_amdgpu_vm_grab_id(vm, ring, job);