| /linux/drivers/gpu/drm/nouveau/ |
| H A D | nouveau_sched.c | 26 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 D | nouveau_exec.c | 89 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 D | xe_tlb_inval_job.c | 50 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 D | xe_ring_ops.c | 211 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 D | job.c | 21 #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 D | dm-kcopyd.c | 420 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 D | pvr_job.c | 26 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 D | pvr_queue.c | 193 * 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 D | pvr_job.h | 104 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 D | v3d_sched.c | 13 * 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 D | v3d_submit.c | 15 * 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 D | rocket_job.c | 61 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 D | ethosu_job.c | 45 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 D | panfrost_job.c | 111 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 D | msm_gem_vma.c | 113 /** @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 D | aie2_ctx.c | 64 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 D | amdxdna_ctx.c | 165 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 D | sched_main.c | 32 * 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 D | sched_entity.c | 68 * 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 D | amdgpu_ids.c | 180 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 D | submit.c | 28 "%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 D | lpfc_bsg.c | 71 /* 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 D | ufs_bsg.c | 29 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 D | hw_queue.c | 279 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 D | sas_host_smp.c | 225 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 …]
|