Home
last modified time | relevance | path

Searched refs:job (Results 1 – 25 of 221) sorted by relevance

123456789

/linux/drivers/gpu/drm/nouveau/
H A Dnouveau_sched.c26 nouveau_job_init(struct nouveau_job *job, in nouveau_job_init() argument
32 INIT_LIST_HEAD(&job->entry); in nouveau_job_init()
34 job->file_priv = args->file_priv; in nouveau_job_init()
35 job->cli = nouveau_cli(args->file_priv); in nouveau_job_init()
36 job->sched = sched; in nouveau_job_init()
38 job->sync = args->sync; in nouveau_job_init()
39 job->resv_usage = args->resv_usage; in nouveau_job_init()
41 job->ops = args->ops; in nouveau_job_init()
43 job->in_sync.count = args->in_sync.count; in nouveau_job_init()
44 if (job in nouveau_job_init()
109 nouveau_job_fini(struct nouveau_job * job) nouveau_job_fini() argument
118 nouveau_job_done(struct nouveau_job * job) nouveau_job_done() argument
130 nouveau_job_free(struct nouveau_job * job) nouveau_job_free() argument
139 sync_find_fence(struct nouveau_job * job,struct drm_nouveau_sync * sync,struct dma_fence ** fence) sync_find_fence() argument
164 nouveau_job_add_deps(struct nouveau_job * job) nouveau_job_add_deps() argument
189 nouveau_job_fence_attach_cleanup(struct nouveau_job * job) nouveau_job_fence_attach_cleanup() argument
206 nouveau_job_fence_attach_prepare(struct nouveau_job * job) nouveau_job_fence_attach_prepare() argument
248 nouveau_job_fence_attach(struct nouveau_job * job) nouveau_job_fence_attach() argument
273 nouveau_job_submit(struct nouveau_job * job) nouveau_job_submit() argument
346 nouveau_job_run(struct nouveau_job * job) nouveau_job_run() argument
362 struct nouveau_job *job = to_nouveau_job(sched_job); nouveau_sched_run_job() local
371 struct nouveau_job *job = to_nouveau_job(sched_job); nouveau_sched_timedout_job() local
389 struct nouveau_job *job = to_nouveau_job(sched_job); nouveau_sched_free_job() local
[all...]
H A Dnouveau_exec.c89 nouveau_exec_job_submit(struct nouveau_job *job, in nouveau_exec_job_submit() argument
92 struct nouveau_exec_job *exec_job = to_nouveau_exec_job(job); in nouveau_exec_job_submit()
93 struct nouveau_cli *cli = job->cli; in nouveau_exec_job_submit()
120 nouveau_exec_job_armed_submit(struct nouveau_job *job, in nouveau_exec_job_armed_submit() argument
123 drm_gpuvm_exec_resv_add_fence(vme, job->done_fence, in nouveau_exec_job_armed_submit()
124 job->resv_usage, job->resv_usage); in nouveau_exec_job_armed_submit()
129 nouveau_exec_job_run(struct nouveau_job *job) in nouveau_exec_job_run() argument
131 struct nouveau_exec_job *exec_job = to_nouveau_exec_job(job); in nouveau_exec_job_run()
138 NV_PRINTK(err, job->cli, "nv50cal_space: %d\n", ret); in nouveau_exec_job_run()
154 NV_PRINTK(err, job->cli, "error fencing pushbuf: %d\n", ret); in nouveau_exec_job_run()
[all …]
/linux/drivers/gpu/drm/xe/
H A Dxe_tlb_inval_job.c50 struct xe_tlb_inval_job *job = in xe_tlb_inval_job_run() local
51 container_of(dep_job, typeof(*job), dep); in xe_tlb_inval_job_run()
53 container_of(job->fence, typeof(*ifence), base); in xe_tlb_inval_job_run()
56 if (xe_page_reclaim_list_valid(&job->prl)) { in xe_tlb_inval_job_run()
57 prl_sa = xe_page_reclaim_create_prl_bo(job->tlb_inval, &job->prl, ifence); in xe_tlb_inval_job_run()
62 xe_tlb_inval_range(job->tlb_inval, ifence, job->start, in xe_tlb_inval_job_run()
63 job->end, job->vm->usm.asid, prl_sa); in xe_tlb_inval_job_run()
65 return job->fence; in xe_tlb_inval_job_run()
70 struct xe_tlb_inval_job *job = in xe_tlb_inval_job_free() local
71 container_of(dep_job, typeof(*job), dep); in xe_tlb_inval_job_free()
[all …]
H A Dxe_ring_ops.c211 static int emit_render_cache_flush(struct xe_sched_job *job, u32 *dw, int i) in emit_render_cache_flush() argument
213 struct xe_exec_queue *q = job->q; in emit_render_cache_flush()
234 else if (job->q->class == XE_ENGINE_CLASS_COMPUTE) in emit_render_cache_flush()
261 static u32 get_ppgtt_flag(struct xe_sched_job *job) in get_ppgtt_flag() argument
263 if (job->q->vm && !job->ggtt) in get_ppgtt_flag()
323 static void __emit_job_gen12_simple(struct xe_sched_job *job, struct xe_lrc *lrc, in __emit_job_gen12_simple()
327 u32 ppgtt_flag = get_ppgtt_flag(job); in __emit_job_gen12_simple()
328 struct xe_gt *gt = job->q->gt; in __emit_job_gen12_simple()
332 if (job in __emit_job_gen12_simple()
319 __emit_job_gen12_simple(struct xe_sched_job * job,struct xe_lrc * lrc,u64 batch_addr,u32 * head,u32 seqno) __emit_job_gen12_simple() argument
378 __emit_job_gen12_video(struct xe_sched_job * job,struct xe_lrc * lrc,u64 batch_addr,u32 * head,u32 seqno) __emit_job_gen12_video() argument
429 __emit_job_gen12_render_compute(struct xe_sched_job * job,struct xe_lrc * lrc,u64 batch_addr,u32 * head,u32 seqno) __emit_job_gen12_render_compute() argument
493 emit_migration_job_gen12(struct xe_sched_job * job,struct xe_lrc * lrc,u32 * head,u32 seqno) emit_migration_job_gen12() argument
531 emit_job_gen12_gsc(struct xe_sched_job * job) emit_job_gen12_gsc() argument
543 emit_job_gen12_copy(struct xe_sched_job * job) emit_job_gen12_copy() argument
561 emit_job_gen12_video(struct xe_sched_job * job) emit_job_gen12_video() argument
573 emit_job_gen12_render_compute(struct xe_sched_job * job) emit_job_gen12_render_compute() argument
[all...]
/linux/drivers/gpu/host1x/
H A Djob.c21 #include "job.h"
30 struct host1x_job *job = NULL; in host1x_job_alloc() local
51 mem = job = kzalloc(total, GFP_KERNEL); in host1x_job_alloc()
52 if (!job) in host1x_job_alloc()
55 job->enable_firewall = enable_firewall; in host1x_job_alloc()
57 kref_init(&job->ref); in host1x_job_alloc()
58 job->channel = ch; in host1x_job_alloc()
62 job->relocs = num_relocs ? mem : NULL; in host1x_job_alloc()
64 job->unpins = num_unpins ? mem : NULL; in host1x_job_alloc()
66 job in host1x_job_alloc()
77 host1x_job_get(struct host1x_job * job) host1x_job_get() argument
86 struct host1x_job *job = container_of(ref, struct host1x_job, ref); job_free() local
107 host1x_job_put(struct host1x_job * job) host1x_job_put() argument
113 host1x_job_add_gather(struct host1x_job * job,struct host1x_bo * bo,unsigned int words,unsigned int offset) host1x_job_add_gather() argument
126 host1x_job_add_wait(struct host1x_job * job,u32 id,u32 thresh,bool relative,u32 next_class) host1x_job_add_wait() argument
141 pin_job(struct host1x * host,struct host1x_job * job) pin_job() argument
279 do_relocs(struct host1x_job * job,struct host1x_job_gather * g) do_relocs() argument
339 struct host1x_job *job; global() member
524 copy_gathers(struct device * host,struct host1x_job * job,struct device * dev) copy_gathers() argument
598 host1x_job_pin(struct host1x_job * job,struct device * dev) host1x_job_pin() argument
653 host1x_job_unpin(struct host1x_job * job) host1x_job_unpin() argument
682 host1x_job_dump(struct device * dev,struct host1x_job * job) host1x_job_dump() argument
[all...]
/linux/drivers/md/
H A Ddm-kcopyd.c420 struct kcopyd_job *job; in pop_io_job() local
426 list_for_each_entry(job, jobs, list) { in pop_io_job()
427 if (job->op == REQ_OP_READ || in pop_io_job()
428 !(job->flags & BIT(DM_KCOPYD_WRITE_SEQ))) { in pop_io_job()
429 list_del(&job->list); in pop_io_job()
430 return job; in pop_io_job()
433 if (job->write_offset == job->master_job->write_offset) { in pop_io_job()
434 job->master_job->write_offset += job->source.count; in pop_io_job()
435 list_del(&job->list); in pop_io_job()
436 return job; in pop_io_job()
[all …]
/linux/drivers/gpu/drm/imagination/
H A Dpvr_job.c26 struct pvr_job *job = container_of(kref, struct pvr_job, ref_count); in pvr_job_release()
28 xa_erase(&job->pvr_dev->job_ids, job->id); in pvr_job_release()
30 pvr_hwrt_data_put(job->hwrt); in pvr_job_release()
31 pvr_context_put(job->ctx); in pvr_job_release()
33 WARN_ON(job->paired_job); in pvr_job_release()
35 pvr_queue_job_cleanup(job); in pvr_job_release()
36 pvr_job_release_pm_ref(job); in pvr_job_release()
38 kfree(job->cmd); in pvr_job_release()
39 kfree(job); in pvr_job_release()
25 struct pvr_job *job = container_of(kref, struct pvr_job, ref_count); pvr_job_release() local
46 pvr_job_put(struct pvr_job * job) pvr_job_put() argument
69 pvr_job_process_stream(struct pvr_device * pvr_dev,const struct pvr_stream_cmd_defs * cmd_defs,void * stream,u32 stream_size,struct pvr_job * job) pvr_job_process_stream() argument
86 pvr_fw_cmd_init(struct pvr_device * pvr_dev,struct pvr_job * job,const struct pvr_stream_cmd_defs * stream_def,u64 stream_userptr,u32 stream_len) pvr_fw_cmd_init() argument
142 pvr_geom_job_fw_cmd_init(struct pvr_job * job,struct drm_pvr_job * args) pvr_geom_job_fw_cmd_init() argument
171 pvr_frag_job_fw_cmd_init(struct pvr_job * job,struct drm_pvr_job * args) pvr_frag_job_fw_cmd_init() argument
215 pvr_compute_job_fw_cmd_init(struct pvr_job * job,struct drm_pvr_job * args) pvr_compute_job_fw_cmd_init() argument
251 pvr_transfer_job_fw_cmd_init(struct pvr_job * job,struct drm_pvr_job * args) pvr_transfer_job_fw_cmd_init() argument
276 pvr_job_fw_cmd_init(struct pvr_job * job,struct drm_pvr_job * args) pvr_job_fw_cmd_init() argument
303 struct pvr_job *job; global() member
407 struct pvr_job *job = NULL; create_job() local
541 struct pvr_job *job = job_data[i].job; jobs_lock_all_objs() local
579 update_job_resvs(struct pvr_job * job) update_job_resvs() argument
624 struct pvr_job *job = job_data[i - 1].job; get_last_queued_job_scheduled_fence() local
[all...]
H A Dpvr_queue.c193 * Currently the only dma_fence backed by a UFO object is the job fence, in to_pvr_queue_job_fence()
205 * - a job fence directly, in which case it simply returns the containing pvr_queue_fence;
207 * the parent pointer to find the job fence (note that the parent pointer is initialized
208 * only after the run_job() callback is called on the drm_sched_fence's owning job);
264 * Call this function to allocate job CCCB and done fences. This only
329 * pvr_queue_job_fence_init() - Initializes a job done fence object. in pvr_queue_fence_ctx_init()
334 * a job. in ufo_cmds_size()
376 static u32 job_cmds_size(struct pvr_job *job, u32 ufo_wait_count) in job_count_remaining_native_deps()
379 * One UFO command per native fence this job will be waiting on (unless any are in job_count_remaining_native_deps()
380 * signaled by the time the job i in job_count_remaining_native_deps()
350 job_cmds_size(struct pvr_job * job,u32 ufo_wait_count) job_cmds_size() argument
365 job_count_remaining_native_deps(struct pvr_job * job) job_count_remaining_native_deps() argument
398 pvr_queue_get_job_cccb_fence(struct pvr_queue * queue,struct pvr_job * job) pvr_queue_get_job_cccb_fence() argument
451 pvr_queue_get_job_kccb_fence(struct pvr_queue * queue,struct pvr_job * job) pvr_queue_get_job_kccb_fence() argument
471 pvr_queue_get_paired_frag_job_dep(struct pvr_queue * queue,struct pvr_job * job) pvr_queue_get_paired_frag_job_dep() argument
508 struct pvr_job *job = container_of(sched_job, struct pvr_job, base); pvr_queue_prepare_job() local
611 pvr_queue_submit_job_to_cccb(struct pvr_job * job) pvr_queue_submit_job_to_cccb() argument
698 struct pvr_job *job = container_of(sched_job, struct pvr_job, base); pvr_queue_run_job() local
773 struct pvr_job *job; pvr_queue_start() local
814 struct pvr_job *job; pvr_queue_timedout_job() local
866 struct pvr_job *job = container_of(sched_job, struct pvr_job, base); pvr_queue_free_job() local
918 struct pvr_job *job, *tmp_job; pvr_queue_signal_done_fences() local
950 struct pvr_job *job; pvr_queue_check_job_waiting_for_cccb_space() local
1086 pvr_queue_job_init(struct pvr_job * job,u64 drm_client_id) pvr_queue_job_init() argument
1131 pvr_queue_job_arm(struct pvr_job * job) pvr_queue_job_arm() argument
1144 pvr_queue_job_cleanup(struct pvr_job * job) pvr_queue_job_cleanup() argument
1164 pvr_queue_job_push(struct pvr_job * job) pvr_queue_job_push() argument
[all...]
H A Dpvr_job.h104 pvr_job_get(struct pvr_job *job) in pvr_job_get() argument
106 if (job) in pvr_job_get()
107 kref_get(&job->ref_count); in pvr_job_get()
109 return job; in pvr_job_get()
112 void pvr_job_put(struct pvr_job *job);
119 pvr_job_release_pm_ref(struct pvr_job *job) in pvr_job_release_pm_ref() argument
121 if (job->has_pm_ref) { in pvr_job_release_pm_ref()
122 pvr_power_put(job->pvr_dev); in pvr_job_release_pm_ref()
123 job->has_pm_ref = false; in pvr_job_release_pm_ref()
136 pvr_job_get_pm_ref(struct pvr_job *job) in pvr_job_get_pm_ref() argument
[all …]
/linux/drivers/gpu/drm/v3d/
H A Dv3d_sched.c13 * jobs when bulk background jobs are queued up, we submit a new job
93 struct v3d_job *job = to_v3d_job(sched_job); in v3d_sched_job_free() local
95 v3d_job_cleanup(job); in v3d_sched_job_free()
129 v3d_switch_perfmon(struct v3d_dev *v3d, struct v3d_job *job) in v3d_switch_perfmon() argument
134 perfmon = job->perfmon; in v3d_switch_perfmon()
155 v3d_job_start_stats(struct v3d_job *job) in v3d_job_start_stats() argument
160 v3d_stats_start(job->client_stats, now); in v3d_job_start_stats()
161 v3d_stats_start(job->global_stats, now); in v3d_job_start_stats()
176 v3d_job_update_stats(struct v3d_job *job) in v3d_job_update_stats() argument
181 v3d_stats_update(job in v3d_job_update_stats()
188 struct v3d_bin_job *job = to_bin_job(sched_job); v3d_bin_job_run() local
249 struct v3d_render_job *job = to_render_job(sched_job); v3d_render_job_run() local
297 struct v3d_tfu_job *job = to_tfu_job(sched_job); v3d_tfu_job_run() local
344 struct v3d_csd_job *job = to_csd_job(sched_job); v3d_csd_job_run() local
401 v3d_rewrite_csd_job_wg_counts_from_indirect(struct v3d_cpu_job * job) v3d_rewrite_csd_job_wg_counts_from_indirect() argument
447 v3d_timestamp_query(struct v3d_cpu_job * job) v3d_timestamp_query() argument
467 v3d_reset_timestamp_queries(struct v3d_cpu_job * job) v3d_reset_timestamp_queries() argument
506 v3d_copy_query_results(struct v3d_cpu_job * job) v3d_copy_query_results() argument
547 v3d_reset_performance_queries(struct v3d_cpu_job * job) v3d_reset_performance_queries() argument
575 v3d_write_performance_query_result(struct v3d_cpu_job * job,void * data,unsigned int query) v3d_write_performance_query_result() argument
615 v3d_copy_performance_query(struct v3d_cpu_job * job) v3d_copy_performance_query() argument
660 struct v3d_cpu_job *job = to_cpu_job(sched_job); v3d_cpu_job_run() local
683 struct v3d_job *job = to_v3d_job(sched_job); v3d_cache_clean_job_run() local
700 struct v3d_job *job = to_v3d_job(sched_job); v3d_gpu_reset_for_timeout() local
734 struct v3d_job *job = to_v3d_job(sched_job); v3d_cl_job_timedout() local
757 struct v3d_bin_job *job = to_bin_job(sched_job); v3d_bin_job_timedout() local
766 struct v3d_render_job *job = to_render_job(sched_job); v3d_render_job_timedout() local
775 struct v3d_job *job = to_v3d_job(sched_job); v3d_tfu_job_timedout() local
783 struct v3d_csd_job *job = to_csd_job(sched_job); v3d_csd_job_timedout() local
[all...]
H A Dv3d_submit.c15 * we can attach fences and update the reservations after pushing the job
23 v3d_lock_bo_reservations(struct v3d_job *job, in v3d_lock_bo_reservations() argument
28 ret = drm_gem_lock_reservations(job->bo, job->bo_count, acquire_ctx); in v3d_lock_bo_reservations()
32 for (i = 0; i < job->bo_count; i++) { in v3d_lock_bo_reservations()
33 ret = dma_resv_reserve_fences(job->bo[i]->resv, 1); in v3d_lock_bo_reservations()
37 ret = drm_sched_job_add_implicit_dependencies(&job->base, in v3d_lock_bo_reservations()
38 job->bo[i], true); in v3d_lock_bo_reservations()
46 drm_gem_unlock_reservations(job->bo, job in v3d_lock_bo_reservations()
69 v3d_lookup_bos(struct drm_device * dev,struct drm_file * file_priv,struct v3d_job * job,u64 bo_handles,u32 bo_count) v3d_lookup_bos() argument
91 struct v3d_job *job = container_of(ref, struct v3d_job, refcount); v3d_job_free() local
115 struct v3d_render_job *job = container_of(ref, struct v3d_render_job, v3d_render_job_free() local
129 struct v3d_cpu_job *job = container_of(ref, struct v3d_cpu_job, v3d_cpu_job_free() local
144 v3d_job_cleanup(struct v3d_job * job) v3d_job_cleanup() argument
153 v3d_job_put(struct v3d_job * job) v3d_job_put() argument
182 v3d_job_init(struct v3d_dev * v3d,struct drm_file * file_priv,struct v3d_job * job,void (* free)(struct kref * ref),u32 in_sync,struct v3d_submit_ext * se,enum v3d_queue queue) v3d_job_init() argument
238 v3d_push_job(struct v3d_job * job) v3d_push_job() argument
252 v3d_attach_fences_and_unlock_reservation(struct drm_file * file_priv,struct v3d_job * job,struct ww_acquire_ctx * acquire_ctx,u32 out_sync,struct v3d_submit_ext * se,struct dma_fence * done_fence) v3d_attach_fences_and_unlock_reservation() argument
296 v3d_setup_csd_jobs_and_bos(struct drm_file * file_priv,struct v3d_dev * v3d,struct drm_v3d_submit_csd * args,struct v3d_csd_job ** job,struct v3d_job ** clean_job,struct v3d_submit_ext * se,struct ww_acquire_ctx * acquire_ctx) v3d_setup_csd_jobs_and_bos() argument
440 v3d_validate_cpu_job(struct drm_file * file_priv,struct v3d_cpu_job * job) v3d_validate_cpu_job() argument
462 v3d_get_cpu_indirect_csd_params(struct drm_file * file_priv,struct drm_v3d_extension __user * ext,struct v3d_cpu_job * job) v3d_get_cpu_indirect_csd_params() argument
497 v3d_get_cpu_timestamp_query_params(struct drm_file * file_priv,struct drm_v3d_extension __user * ext,struct v3d_cpu_job * job) v3d_get_cpu_timestamp_query_params() argument
558 v3d_get_cpu_reset_timestamp_params(struct drm_file * file_priv,struct drm_v3d_extension __user * ext,struct v3d_cpu_job * job) v3d_get_cpu_reset_timestamp_params() argument
611 v3d_get_cpu_copy_query_results_params(struct drm_file * file_priv,struct drm_v3d_extension __user * ext,struct v3d_cpu_job * job) v3d_get_cpu_copy_query_results_params() argument
741 v3d_get_cpu_reset_performance_params(struct drm_file * file_priv,struct drm_v3d_extension __user * ext,struct v3d_cpu_job * job) v3d_get_cpu_reset_performance_params() argument
778 v3d_get_cpu_copy_performance_query_params(struct drm_file * file_priv,struct drm_v3d_extension __user * ext,struct v3d_cpu_job * job) v3d_get_cpu_copy_performance_query_params() argument
829 v3d_get_extensions(struct drm_file * file_priv,u64 ext_handles,struct v3d_submit_ext * se,struct v3d_cpu_job * job) v3d_get_extensions() argument
1075 struct v3d_tfu_job *job = NULL; v3d_submit_tfu_ioctl() local
1174 struct v3d_csd_job *job = NULL; v3d_submit_csd_ioctl() local
[all...]
/linux/drivers/accel/rocket/
H A Drocket_job.c61 struct drm_rocket_job *job, in rocket_copy_tasks() argument
66 if (job->task_struct_size < sizeof(struct drm_rocket_task)) in rocket_copy_tasks()
69 rjob->task_count = job->task_count; in rocket_copy_tasks()
74 rjob->tasks = kvmalloc_objs(*rjob->tasks, job->task_count); in rocket_copy_tasks()
84 u64_to_user_ptr(job->tasks) + i * job->task_struct_size, in rocket_copy_tasks()
108 static void rocket_job_hw_submit(struct rocket_core *core, struct rocket_job *job) in rocket_job_hw_submit() argument
113 /* Don't queue the job if a reset is in progress */ in rocket_job_hw_submit()
119 task = &job->tasks[job in rocket_job_hw_submit()
157 rocket_acquire_object_fences(struct drm_gem_object ** bos,int bo_count,struct drm_sched_job * job,bool is_write) rocket_acquire_object_fences() argument
186 rocket_job_push(struct rocket_job * job) rocket_job_push() argument
232 struct rocket_job *job = container_of(ref, struct rocket_job, rocket_job_cleanup() local
260 rocket_job_put(struct rocket_job * job) rocket_job_put() argument
267 struct rocket_job *job = to_rocket_job(sched_job); rocket_job_free() local
289 struct rocket_job *job = to_rocket_job(sched_job); rocket_job_run() local
384 struct rocket_job *job = to_rocket_job(sched_job); rocket_job_timedout() local
535 rocket_ioctl_submit_job(struct drm_device * dev,struct drm_file * file,struct drm_rocket_job * job) rocket_ioctl_submit_job() argument
[all...]
/linux/drivers/accel/ethosu/
H A Dethosu_job.c45 static void ethosu_job_hw_submit(struct ethosu_device *dev, struct ethosu_job *job) in ethosu_job_hw_submit() argument
47 struct drm_gem_dma_object *cmd_bo = to_drm_gem_dma_obj(job->cmd_bo); in ethosu_job_hw_submit()
48 struct ethosu_validated_cmdstream_info *cmd_info = to_ethosu_bo(job->cmd_bo)->info; in ethosu_job_hw_submit()
50 for (int i = 0; i < job->region_cnt; i++) { in ethosu_job_hw_submit()
52 int region = job->region_bo_num[i]; in ethosu_job_hw_submit()
54 bo = to_drm_gem_dma_obj(job->region_bo[i]); in ethosu_job_hw_submit()
60 if (job->sram_size) { in ethosu_job_hw_submit()
79 static int ethosu_acquire_object_fences(struct ethosu_job *job) in ethosu_acquire_object_fences() argument
82 struct drm_gem_object **bos = job->region_bo; in ethosu_acquire_object_fences()
83 struct ethosu_validated_cmdstream_info *info = to_ethosu_bo(job in ethosu_acquire_object_fences()
105 ethosu_attach_object_fences(struct ethosu_job * job) ethosu_attach_object_fences() argument
117 ethosu_job_push(struct ethosu_job * job) ethosu_job_push() argument
146 ethosu_job_err_cleanup(struct ethosu_job * job) ethosu_job_err_cleanup() argument
160 struct ethosu_job *job = container_of(ref, struct ethosu_job, ethosu_job_cleanup() local
171 ethosu_job_put(struct ethosu_job * job) ethosu_job_put() argument
178 struct ethosu_job *job = to_ethosu_job(sched_job); ethosu_job_free() local
186 struct ethosu_job *job = to_ethosu_job(sched_job); ethosu_job_run() local
246 struct ethosu_job *job = to_ethosu_job(bad); ethosu_job_timedout() local
369 ethosu_ioctl_submit_job(struct drm_device * dev,struct drm_file * file,struct drm_ethosu_job * job) ethosu_ioctl_submit_job() argument
[all...]
/linux/drivers/gpu/drm/panfrost/
H A Dpanfrost_job.c111 int panfrost_job_get_slot(struct panfrost_job *job) in panfrost_job_get_slot() argument
117 if (job->requirements & PANFROST_JD_REQ_FS) in panfrost_job_get_slot()
122 if (job->requirements & PANFROST_JD_REQ_ONLY_COMPUTE) { in panfrost_job_get_slot()
123 if ((job->requirements & PANFROST_JD_REQ_CORE_GRP_MASK) && in panfrost_job_get_slot()
124 (job->pfdev->features.nr_core_groups == 2)) in panfrost_job_get_slot()
126 if (panfrost_has_hw_issue(job->pfdev, HW_ISSUE_8987)) in panfrost_job_get_slot()
151 panfrost_get_job_chain_flag(const struct panfrost_job *job) in panfrost_get_job_chain_flag() argument
153 struct panfrost_fence *f = to_panfrost_fence(job->done_fence); in panfrost_get_job_chain_flag()
155 if (!panfrost_has_hw_feature(job->pfdev, HW_FEATURE_JOBCHAIN_DISAMBIGUATION)) in panfrost_get_job_chain_flag()
164 struct panfrost_job *job in panfrost_dequeue_job() local
186 panfrost_enqueue_job(struct panfrost_device * pfdev,int slot,struct panfrost_job * job) panfrost_enqueue_job() argument
203 panfrost_job_hw_submit(struct panfrost_job * job,int js) panfrost_job_hw_submit() argument
284 panfrost_acquire_object_fences(struct drm_gem_object ** bos,int bo_count,struct drm_sched_job * job) panfrost_acquire_object_fences() argument
313 panfrost_job_push(struct panfrost_job * job) panfrost_job_push() argument
353 struct panfrost_job *job = container_of(ref, struct panfrost_job, panfrost_job_cleanup() local
382 panfrost_job_put(struct panfrost_job * job) panfrost_job_put() argument
389 struct panfrost_job *job = to_panfrost_job(sched_job); panfrost_job_free() local
398 struct panfrost_job *job = to_panfrost_job(sched_job); panfrost_job_run() local
453 panfrost_job_handle_err(struct panfrost_device * pfdev,struct panfrost_job * job,unsigned int js) panfrost_job_handle_err() argument
507 panfrost_jm_handle_done(struct panfrost_device * pfdev,struct panfrost_job * job) panfrost_jm_handle_done() argument
763 struct panfrost_job *job = to_panfrost_job(sched_job); panfrost_job_timedout() local
1106 struct panfrost_job *job = pfdev->jobs[i][j]; panfrost_jm_ctx_destroy() local
[all...]
/linux/drivers/gpu/drm/msm/
H A Dmsm_gem_vma.c113 /** @fence: The fence that is signaled when job completes */
115 /** @queue: The queue that the job runs on */
153 static inline struct msm_vm_bind_job *to_msm_vm_bind_job(struct drm_sched_job *job) in to_msm_vm_bind_job() argument
155 return container_of(job, struct msm_vm_bind_job, base); in to_msm_vm_bind_job()
466 struct msm_vm_bind_job *job; member
479 list_add_tail(&op->node, &arg->job->vm_ops); in vm_op_enqueue()
490 return msm_gem_vma_new(arg->job->vm, op->gem.obj, op->gem.offset, in vma_from_op()
498 struct msm_vm_bind_job *job = arg->job; in msm_gem_vm_sm_step_map() local
531 .queue_id = job in msm_gem_vm_sm_step_map()
548 struct msm_vm_bind_job *job = ((struct op_arg *)arg)->job; msm_gem_vm_sm_step_remap() local
636 struct msm_vm_bind_job *job = arg->job; msm_gem_vm_sm_step_unmap() local
704 struct msm_vm_bind_job *job = to_msm_vm_bind_job(_job); msm_vma_job_run() local
763 struct msm_vm_bind_job *job = to_msm_vm_bind_job(_job); msm_vma_job_free() local
961 struct msm_vm_bind_job *job; vm_bind_job_create() local
993 lookup_op(struct msm_vm_bind_job * job,const struct drm_msm_vm_bind_op * op) lookup_op() argument
1055 vm_bind_job_lookup_ops(struct msm_vm_bind_job * job,struct drm_msm_vm_bind * args,struct drm_file * file,int * nr_bos) vm_bind_job_lookup_ops() argument
1147 prealloc_count(struct msm_vm_bind_job * job,struct msm_vm_bind_op * first,struct msm_vm_bind_op * last) prealloc_count() argument
1183 vm_bind_prealloc_count(struct msm_vm_bind_job * job) vm_bind_prealloc_count() argument
1236 vm_bind_job_lock_objects(struct msm_vm_bind_job * job,struct drm_exec * exec) vm_bind_job_lock_objects() argument
1291 vm_bind_job_pin_objects(struct msm_vm_bind_job * job) vm_bind_job_pin_objects() argument
1331 vm_bind_job_unpin_objects(struct msm_vm_bind_job * job) vm_bind_job_unpin_objects() argument
1349 vm_bind_job_prepare(struct msm_vm_bind_job * job) vm_bind_job_prepare() argument
1415 vm_bind_job_attach_fences(struct msm_vm_bind_job * job) vm_bind_job_attach_fences() argument
1434 struct msm_vm_bind_job *job = NULL; msm_ioctl_vm_bind() local
[all...]
/linux/drivers/accel/amdxdna/
H A Daie2_ctx.c64 struct amdxdna_sched_job *job; in aie2_hwctx_stop()
66 job = container_of(ref, struct amdxdna_sched_job, refcnt); in aie2_hwctx_stop()
68 amdxdna_sched_job_cleanup(job); in aie2_hwctx_stop()
69 atomic64_inc(&job->hwctx->job_free_cnt);
70 wake_up(&job->hwctx->priv->job_free_wq); in aie2_hwctx_restart()
71 if (job->out_fence) in aie2_hwctx_restart()
72 dma_fence_put(job->out_fence); in aie2_hwctx_restart()
73 kfree(job->aie2_job_health); in aie2_hwctx_restart()
74 kfree(job); in aie2_hwctx_restart()
77 static void aie2_job_put(struct amdxdna_sched_job *job) in aie2_hwctx_restart()
44 struct amdxdna_sched_job *job; aie2_job_release() local
56 aie2_job_put(struct amdxdna_sched_job * job) aie2_job_put() argument
174 aie2_sched_notify(struct amdxdna_sched_job * job) aie2_sched_notify() argument
189 aie2_set_cmd_timeout(struct amdxdna_sched_job * job) aie2_set_cmd_timeout() argument
236 struct amdxdna_sched_job *job = handle; aie2_sched_resp_handler() local
270 struct amdxdna_sched_job *job = handle; aie2_sched_drvcmd_resp_handler() local
291 struct amdxdna_sched_job *job = handle; aie2_sched_cmdlist_resp_handler() local
342 struct amdxdna_sched_job *job = drm_job_to_xdna_job(sched_job); aie2_sched_job_run() local
395 struct amdxdna_sched_job *job = drm_job_to_xdna_job(sched_job); aie2_sched_job_free() local
409 struct amdxdna_sched_job *job = drm_job_to_xdna_job(sched_job); aie2_sched_job_timedout() local
1025 aie2_cmd_submit(struct amdxdna_hwctx * hwctx,struct amdxdna_sched_job * job,u64 * seq) aie2_cmd_submit() argument
[all...]
H A Damdxdna_ctx.c165 struct amdxdna_sched_job *job, u32 cmd_idx, in amdxdna_cmd_set_error()
169 struct amdxdna_client *client = job->hwctx->client; in amdxdna_cmd_set_error()
487 amdxdna_arg_bos_put(struct amdxdna_sched_job *job) in amdxdna_cmd_submit()
491 for (i = 0; i < job->bo_cnt; i++) { in amdxdna_cmd_submit()
492 if (!job->bos[i]) in amdxdna_cmd_submit()
494 drm_gem_object_put(job->bos[i]); in amdxdna_cmd_submit()
500 struct amdxdna_sched_job *job, in amdxdna_cmd_submit()
506 job->bo_cnt = bo_cnt; in amdxdna_cmd_submit()
507 for (i = 0; i < job->bo_cnt; i++) { in amdxdna_cmd_submit()
520 job in amdxdna_cmd_submit()
146 amdxdna_cmd_set_error(struct amdxdna_gem_obj * abo,struct amdxdna_sched_job * job,u32 cmd_idx,enum ert_cmd_state error_state,void * err_data,size_t size) amdxdna_cmd_set_error() argument
405 amdxdna_arg_bos_put(struct amdxdna_sched_job * job) amdxdna_arg_bos_put() argument
418 amdxdna_arg_bos_lookup(struct amdxdna_client * client,struct amdxdna_sched_job * job,u32 * bo_hdls,u32 bo_cnt) amdxdna_arg_bos_lookup() argument
461 amdxdna_sched_job_cleanup(struct amdxdna_sched_job * job) amdxdna_sched_job_cleanup() argument
476 struct amdxdna_sched_job *job; amdxdna_cmd_submit() local
[all...]
/linux/drivers/gpu/drm/scheduler/
H A Dsched_main.c32 * backend operations to the scheduler like submitting a job to hardware run queue,
33 * returning the dependencies of a job etc.
46 * Note that once a job was taken from the entities queue and pushed to the
61 * Once a job is executed (but not yet finished), the job's credits contribute
62 * to the scheduler's credit count until the job is finished. If by executing
63 * one more job the scheduler's credit count would exceed the scheduler's
64 * credit limit, the job won't be executed. Instead, the scheduler will wait
103 * Return true if we can push at least one more job from @entity, false in drm_sched_available_credits()
115 /* If a job exceed
524 drm_sched_job_reinsert_on_false_timeout(struct drm_gpu_scheduler * sched,struct drm_sched_job * job) drm_sched_job_reinsert_on_false_timeout() argument
540 struct drm_sched_job *job; drm_sched_job_timedout() local
800 drm_sched_job_init(struct drm_sched_job * job,struct drm_sched_entity * entity,u32 credits,void * owner,uint64_t drm_client_id) drm_sched_job_init() argument
858 drm_sched_job_arm(struct drm_sched_job * job) drm_sched_job_arm() argument
884 drm_sched_job_add_dependency(struct drm_sched_job * job,struct dma_fence * fence) drm_sched_job_add_dependency() argument
932 drm_sched_job_add_syncobj_dependency(struct drm_sched_job * job,struct drm_file * file,u32 handle,u32 point) drm_sched_job_add_syncobj_dependency() argument
960 drm_sched_job_add_resv_dependencies(struct drm_sched_job * job,struct dma_resv * resv,enum dma_resv_usage usage) drm_sched_job_add_resv_dependencies() argument
999 drm_sched_job_add_implicit_dependencies(struct drm_sched_job * job,struct drm_gem_object * obj,bool write) drm_sched_job_add_implicit_dependencies() argument
1016 drm_sched_job_has_dependency(struct drm_sched_job * job,struct dma_fence * fence) drm_sched_job_has_dependency() argument
1047 drm_sched_job_cleanup(struct drm_sched_job * job) drm_sched_job_cleanup() argument
1131 struct drm_sched_job *job, *next; drm_sched_get_finished_job() local
1213 struct drm_sched_job *job; drm_sched_free_job_work() local
1397 struct drm_sched_job *job, *tmp; drm_sched_cancel_remaining_jobs() local
1560 drm_sched_job_is_signaled(struct drm_sched_job * job) drm_sched_job_is_signaled() argument
[all...]
H A Dsched_entity.c68 * drm_sched_entity_stats_job_add_gpu_time - Account job execution time to entity in drm_sched_entity_init()
69 * @job: Scheduler job to account. in drm_sched_entity_init()
71 * Accounts the execution time of @job to its respective entity stats object. in drm_sched_entity_init()
75 ktime_t drm_sched_entity_stats_job_add_gpu_time(struct drm_sched_job *job) in drm_sched_entity_init()
77 struct drm_sched_entity_stats *stats = job->entity_stats; in drm_sched_entity_init()
78 struct drm_sched_fence *s_fence = job->s_fence; in drm_sched_entity_init()
102 * @guilty: atomic_t set to 1 when a job on this queue in drm_sched_entity_init()
194 * drm_sched_entity_error - return error of last scheduled job in drm_sched_entity_kill_jobs_work()
197 * Opportunistically return the error of the last scheduled job in drm_sched_entity_kill_jobs_work()
181 struct drm_sched_job *job = container_of(wrk, typeof(*job), work); drm_sched_entity_kill_jobs_work() local
222 struct drm_sched_job *job = container_of(cb, struct drm_sched_job, drm_sched_entity_kill_jobs_cb() local
234 struct drm_sched_job *job; drm_sched_entity_kill() local
443 drm_sched_job_dependency(struct drm_sched_job * job,struct drm_sched_entity * entity) drm_sched_job_dependency() argument
[all...]
/linux/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_ids.c180 struct amdgpu_job *job) in amdgpu_vmid_gds_switch_needed() argument
182 return id->gds_base != job->gds_base || in amdgpu_vmid_gds_switch_needed()
183 id->gds_size != job->gds_size || in amdgpu_vmid_gds_switch_needed()
184 id->gws_base != job->gws_base || in amdgpu_vmid_gds_switch_needed()
185 id->gws_size != job->gws_size || in amdgpu_vmid_gds_switch_needed()
186 id->oa_base != job->oa_base || in amdgpu_vmid_gds_switch_needed()
187 id->oa_size != job->oa_size; in amdgpu_vmid_gds_switch_needed()
192 struct amdgpu_job *job) in amdgpu_vmid_compatible() argument
194 return id->pd_gpu_addr == job->vm_pd_addr && in amdgpu_vmid_compatible()
195 !amdgpu_vmid_gds_switch_needed(id, job); in amdgpu_vmid_compatible()
[all …]
/linux/drivers/gpu/drm/tegra/
H A Dsubmit.c28 "%s: job submission failed: " fmt "\n", \
326 static int submit_get_syncpt(struct tegra_drm_context *context, struct host1x_job *job,
336 /* Syncpt ref will be dropped on job release */ in submit_get_syncpt()
343 job->syncpt = host1x_syncpt_get(sp); in submit_get_syncpt()
344 job->syncpt_incrs = args->syncpt.increments; in submit_get_syncpt()
349 static int submit_job_add_gather(struct host1x_job *job, struct tegra_drm_context *context,
369 SUBMIT_ERR(context, "too many total words in job"); in submit_job_add_gather()
380 SUBMIT_ERR(context, "job was rejected by firewall"); in submit_job_add_gather()
384 host1x_job_add_gather(job, &bo->base, cmd->words, *offset * 4); in submit_job_add_gather()
398 struct host1x_job *job; in submit_create_job()
327 submit_get_syncpt(struct tegra_drm_context * context,struct host1x_job * job,struct xarray * syncpoints,struct drm_tegra_channel_submit * args) submit_get_syncpt() argument
350 submit_job_add_gather(struct host1x_job * job,struct tegra_drm_context * context,struct drm_tegra_submit_cmd_gather_uptr * cmd,struct gather_bo * bo,u32 * offset,struct tegra_drm_submit_data * job_data,u32 * class) submit_job_add_gather() argument
399 struct host1x_job *job; submit_create_job() local
490 release_job(struct host1x_job * job) release_job() argument
517 struct host1x_job *job; tegra_drm_ioctl_channel_submit() local
[all...]
/linux/drivers/scsi/lpfc/
H A Dlpfc_bsg.c71 /* driver data associated with the job */
96 struct bsg_job *set_job; /* job waiting for this iocb to finish */
305 struct bsg_job *job; in lpfc_bsg_send_mgmt_cmd_cmp() local
316 /* Determine if job has been aborted */ in lpfc_bsg_send_mgmt_cmd_cmp()
318 job = dd_data->set_job; in lpfc_bsg_send_mgmt_cmd_cmp()
319 if (job) { in lpfc_bsg_send_mgmt_cmd_cmp()
320 bsg_reply = job->reply; in lpfc_bsg_send_mgmt_cmd_cmp()
321 /* Prevent timeout handling from trying to abort job */ in lpfc_bsg_send_mgmt_cmd_cmp()
322 job->dd_data = NULL; in lpfc_bsg_send_mgmt_cmd_cmp()
342 if (job) { in lpfc_bsg_send_mgmt_cmd_cmp()
389 lpfc_bsg_send_mgmt_cmd(struct bsg_job * job) lpfc_bsg_send_mgmt_cmd() argument
568 struct bsg_job *job; lpfc_bsg_rport_els_cmp() local
656 lpfc_bsg_rport_els(struct bsg_job * job) lpfc_bsg_rport_els() argument
920 struct bsg_job *job = NULL; lpfc_bsg_ct_unsol_event() local
1180 lpfc_bsg_hba_set_event(struct bsg_job * job) lpfc_bsg_hba_set_event() argument
1263 lpfc_bsg_hba_get_event(struct bsg_job * job) lpfc_bsg_hba_get_event() argument
1375 struct bsg_job *job; lpfc_issue_ct_rsp_cmp() local
1458 lpfc_issue_ct_rsp(struct lpfc_hba * phba,struct bsg_job * job,uint32_t tag,struct lpfc_dmabuf * cmp,struct lpfc_dmabuf * bmp,int num_entry) lpfc_issue_ct_rsp() argument
1584 lpfc_bsg_send_mgmt_rsp(struct bsg_job * job) lpfc_bsg_send_mgmt_rsp() argument
1749 lpfc_sli3_bsg_diag_loopback_mode(struct lpfc_hba * phba,struct bsg_job * job) lpfc_sli3_bsg_diag_loopback_mode() argument
2015 lpfc_sli4_bsg_diag_loopback_mode(struct lpfc_hba * phba,struct bsg_job * job) lpfc_sli4_bsg_diag_loopback_mode() argument
2233 lpfc_bsg_diag_loopback_mode(struct bsg_job * job) lpfc_bsg_diag_loopback_mode() argument
2269 lpfc_sli4_bsg_diag_mode_end(struct bsg_job * job) lpfc_sli4_bsg_diag_mode_end() argument
2348 lpfc_sli4_bsg_link_diag_test(struct bsg_job * job) lpfc_sli4_bsg_link_diag_test() argument
3035 lpfc_bsg_diag_loopback_run(struct bsg_job * job) lpfc_bsg_diag_loopback_run() argument
3335 lpfc_bsg_get_dfc_rev(struct bsg_job * job) lpfc_bsg_get_dfc_rev() argument
3389 struct bsg_job *job; lpfc_bsg_issue_mbox_cmpl() local
3570 lpfc_rd_obj_emb0_handle_job(struct lpfc_hba * phba,u8 * pmb_buf,struct lpfc_sli_config_mbox * sli_cfg_mbx,struct bsg_job * job,struct fc_bsg_reply * bsg_reply) lpfc_rd_obj_emb0_handle_job() argument
3658 struct bsg_job *job; lpfc_bsg_issue_mbox_ext_handle_job() local
3769 struct bsg_job *job; lpfc_bsg_issue_read_mbox_ext_cmpl() local
3809 struct bsg_job *job; lpfc_bsg_issue_write_mbox_ext_cmpl() local
3941 lpfc_bsg_sli_cfg_read_cmd_ext(struct lpfc_hba * phba,struct bsg_job * job,enum nemb_type nemb_tp,struct lpfc_dmabuf * dmabuf) lpfc_bsg_sli_cfg_read_cmd_ext() argument
4184 lpfc_bsg_sli_cfg_write_cmd_ext(struct lpfc_hba * phba,struct bsg_job * job,enum nemb_type nemb_tp,struct lpfc_dmabuf * dmabuf) lpfc_bsg_sli_cfg_write_cmd_ext() argument
4351 lpfc_bsg_handle_sli_cfg_mbox(struct lpfc_hba * phba,struct bsg_job * job,struct lpfc_dmabuf * dmabuf) lpfc_bsg_handle_sli_cfg_mbox() argument
4502 lpfc_bsg_read_ebuf_get(struct lpfc_hba * phba,struct bsg_job * job) lpfc_bsg_read_ebuf_get() argument
4573 lpfc_bsg_write_ebuf_set(struct lpfc_hba * phba,struct bsg_job * job,struct lpfc_dmabuf * dmabuf) lpfc_bsg_write_ebuf_set() argument
4699 lpfc_bsg_handle_sli_cfg_ebuf(struct lpfc_hba * phba,struct bsg_job * job,struct lpfc_dmabuf * dmabuf) lpfc_bsg_handle_sli_cfg_ebuf() argument
4744 lpfc_bsg_handle_sli_cfg_ext(struct lpfc_hba * phba,struct bsg_job * job,struct lpfc_dmabuf * dmabuf) lpfc_bsg_handle_sli_cfg_ext() argument
4822 lpfc_bsg_issue_mbox(struct lpfc_hba * phba,struct bsg_job * job,struct lpfc_vport * vport) lpfc_bsg_issue_mbox() argument
5127 lpfc_bsg_mbox_cmd(struct bsg_job * job) lpfc_bsg_mbox_cmd() argument
5174 lpfc_forced_link_speed(struct bsg_job * job) lpfc_forced_link_speed() argument
5244 lpfc_bsg_get_ras_config(struct bsg_job * job) lpfc_bsg_get_ras_config() argument
5301 lpfc_bsg_set_ras_config(struct bsg_job * job) lpfc_bsg_set_ras_config() argument
5389 lpfc_bsg_get_ras_lwpd(struct bsg_job * job) lpfc_bsg_get_ras_lwpd() argument
5450 lpfc_bsg_get_ras_fwlog(struct bsg_job * job) lpfc_bsg_get_ras_fwlog() argument
5531 lpfc_get_trunk_info(struct bsg_job * job) lpfc_get_trunk_info() argument
5603 lpfc_get_cgnbuf_info(struct bsg_job * job) lpfc_get_cgnbuf_info() argument
5693 lpfc_bsg_hst_vendor(struct bsg_job * job) lpfc_bsg_hst_vendor() argument
5765 lpfc_bsg_request(struct bsg_job * job) lpfc_bsg_request() argument
5802 lpfc_bsg_timeout(struct bsg_job * job) lpfc_bsg_timeout() argument
[all...]
/linux/drivers/ufs/core/
H A Dufs_bsg.c29 static int ufs_bsg_alloc_desc_buffer(struct ufs_hba *hba, struct bsg_job *job, in ufs_bsg_alloc_desc_buffer() argument
33 struct ufs_bsg_request *bsg_request = job->request; in ufs_bsg_alloc_desc_buffer()
47 if (*desc_len > job->request_payload.payload_len) { in ufs_bsg_alloc_desc_buffer()
57 sg_copy_to_buffer(job->request_payload.sg_list, in ufs_bsg_alloc_desc_buffer()
58 job->request_payload.sg_cnt, descp, in ufs_bsg_alloc_desc_buffer()
67 static int ufs_bsg_exec_advanced_rpmb_req(struct ufs_hba *hba, struct bsg_job *job) in ufs_bsg_exec_advanced_rpmb_req() argument
69 struct ufs_rpmb_request *rpmb_request = job->request; in ufs_bsg_exec_advanced_rpmb_req()
70 struct ufs_rpmb_reply *rpmb_reply = job->reply; in ufs_bsg_exec_advanced_rpmb_req()
107 payload = &job->request_payload; in ufs_bsg_exec_advanced_rpmb_req()
132 static int ufs_bsg_request(struct bsg_job *job) in ufs_bsg_request() argument
[all …]
/linux/drivers/accel/habanalabs/common/
H A Dhw_queue.c279 static void ext_queue_schedule_job(struct hl_cs_job *job) in ext_queue_schedule_job() argument
281 struct hl_device *hdev = job->cs->ctx->hdev; in ext_queue_schedule_job()
282 struct hl_hw_queue *q = &hdev->kernel_queues[job->hw_queue_id]; in ext_queue_schedule_job()
297 cb = job->patched_cb; in ext_queue_schedule_job()
298 len = job->job_cb_size; in ext_queue_schedule_job()
302 if (!cs_needs_completion(job->cs)) in ext_queue_schedule_job()
322 job->user_cb_size, in ext_queue_schedule_job()
326 job->contains_dma_pkt); in ext_queue_schedule_job()
328 q->shadow_queue[hl_pi_2_offset(q->pi)] = job; in ext_queue_schedule_job()
344 static void int_queue_schedule_job(struct hl_cs_job *job) in int_queue_schedule_job() argument
[all …]
/linux/drivers/scsi/libsas/
H A Dsas_host_smp.c225 void sas_smp_host_handler(struct bsg_job *job, struct Scsi_Host *shost) in sas_smp_host_handler() argument
233 if (job->request_payload.payload_len < 8 || in sas_smp_host_handler()
234 job->reply_payload.payload_len < 8) in sas_smp_host_handler()
238 req_data = kzalloc(job->request_payload.payload_len, GFP_KERNEL); in sas_smp_host_handler()
241 sg_copy_to_buffer(job->request_payload.sg_list, in sas_smp_host_handler()
242 job->request_payload.sg_cnt, req_data, in sas_smp_host_handler()
243 job->request_payload.payload_len); in sas_smp_host_handler()
247 resp_data = kzalloc(max(job->reply_payload.payload_len, 128U), in sas_smp_host_handler()
282 if (job->request_payload.payload_len < 16) in sas_smp_host_handler()
294 if (job->request_payload.payload_len < 16) in sas_smp_host_handler()
[all …]

123456789