Lines Matching full:job
123 struct amdgpu_ib *ibs, struct amdgpu_job *job, in amdgpu_ib_schedule() argument
144 /* ring tests don't use a job */ in amdgpu_ib_schedule()
145 if (job) { in amdgpu_ib_schedule()
146 vm = job->vm; in amdgpu_ib_schedule()
147 fence_ctx = job->base.s_fence ? in amdgpu_ib_schedule()
148 job->base.s_fence->scheduled.context : 0; in amdgpu_ib_schedule()
159 if (vm && !job->vmid) { in amdgpu_ib_schedule()
180 if (ring->funcs->emit_pipeline_sync && job && in amdgpu_ib_schedule()
181 ((tmp = amdgpu_sync_get_fence(&job->sched_sync)) || in amdgpu_ib_schedule()
183 amdgpu_vm_need_pipeline_sync(ring, job))) { in amdgpu_ib_schedule()
187 trace_amdgpu_ib_pipe_sync(job, tmp); in amdgpu_ib_schedule()
198 if (job) { in amdgpu_ib_schedule()
199 r = amdgpu_vm_flush(ring, job, need_pipe_sync); in amdgpu_ib_schedule()
206 if (job && ring->funcs->init_cond_exec) in amdgpu_ib_schedule()
223 if (job && ring->funcs->emit_cntxcntl) { in amdgpu_ib_schedule()
224 status |= job->preamble_status; in amdgpu_ib_schedule()
225 status |= job->preemption_status; in amdgpu_ib_schedule()
232 if (job && ring->funcs->emit_frame_cntl) { in amdgpu_ib_schedule()
248 if (job && ring->funcs->emit_frame_cntl) { in amdgpu_ib_schedule()
256 amdgpu_ring_emit_ib(ring, job, ib, status); in amdgpu_ib_schedule()
260 if (job && ring->funcs->emit_frame_cntl) in amdgpu_ib_schedule()
272 if (job && job->uf_addr) { in amdgpu_ib_schedule()
273 amdgpu_ring_emit_fence(ring, job->uf_addr, job->uf_sequence, in amdgpu_ib_schedule()
280 if (job && job->vmid) in amdgpu_ib_schedule()
281 amdgpu_vmid_reset(adev, ring->funcs->vmhub, job->vmid); in amdgpu_ib_schedule()