Lines Matching full:job
65 * submission time and set the DRM scheduler max job limit SIZE_OF_RING /
83 * Create job |
85 * Add rebind fence dependency to job |
86 * Add job VM dma-resv bookkeeping slot (non-compute mode) |
87 * Add job to external BOs dma-resv write slots (non-compute mode) |
89 * Install in / out fences for job
90 * Submit job
103 /* The fence slot added here is intended for the exec sched job. */ in xe_exec_fn()
124 struct xe_sched_job *job; in xe_exec_ioctl() local
280 job = xe_sched_job_create(q, xe_exec_queue_is_parallel(q) ? in xe_exec_ioctl()
282 if (IS_ERR(job)) { in xe_exec_ioctl()
283 err = PTR_ERR(job); in xe_exec_ioctl()
289 err = xe_sched_job_add_deps(job, in xe_exec_ioctl()
297 err = xe_sync_entry_add_deps(&syncs[i], job); in xe_exec_ioctl()
302 err = xe_sched_job_last_fence_add_dep(job, vm); in xe_exec_ioctl()
317 * the job and let the DRM scheduler / backend clean up the job. in xe_exec_ioctl()
319 xe_sched_job_arm(job); in xe_exec_ioctl()
321 drm_gpuvm_resv_add_fence(&vm->gpuvm, exec, &job->drm.s_fence->finished, in xe_exec_ioctl()
326 xe_sync_entry_signal(&syncs[i], &job->drm.s_fence->finished); in xe_exec_ioctl()
327 xe_sched_job_init_user_fence(job, &syncs[i]); in xe_exec_ioctl()
331 q->ring_ops->emit_job(job); in xe_exec_ioctl()
333 xe_exec_queue_last_fence_set(q, vm, &job->drm.s_fence->finished); in xe_exec_ioctl()
334 xe_sched_job_push(job); in xe_exec_ioctl()
351 xe_sched_job_put(job); in xe_exec_ioctl()