Home
last modified time | relevance | path

Searched refs:sched_engine (Results 1 – 22 of 22) sorted by relevance

/linux/drivers/gpu/drm/i915/
A Di915_scheduler.c67 assert_priolists(sched_engine); in i915_sched_lookup_priolist()
144 while (locked != (sched_engine = READ_ONCE(rq->engine)->sched_engine)) { in lock_sched_engine()
148 locked = sched_engine; in lock_sched_engine()
234 sched_engine = node_to_request(node)->engine->sched_engine; in __i915_schedule()
238 sched_engine = lock_sched_engine(node, sched_engine, &cache); in __i915_schedule()
246 sched_engine = lock_sched_engine(node, sched_engine, &cache); in __i915_schedule()
254 sched_engine); in __i915_schedule()
443 kfree(sched_engine); in default_destroy()
456 sched_engine = kzalloc(sizeof(*sched_engine), GFP_KERNEL); in i915_sched_engine_create()
457 if (!sched_engine) in i915_sched_engine_create()
[all …]
A Di915_scheduler.h55 i915_sched_engine_get(struct i915_sched_engine *sched_engine) in i915_sched_engine_get() argument
57 kref_get(&sched_engine->ref); in i915_sched_engine_get()
58 return sched_engine; in i915_sched_engine_get()
62 i915_sched_engine_put(struct i915_sched_engine *sched_engine) in i915_sched_engine_put() argument
64 kref_put(&sched_engine->ref, sched_engine->destroy); in i915_sched_engine_put()
70 return RB_EMPTY_ROOT(&sched_engine->queue.rb_root); in i915_sched_engine_is_empty()
76 if (i915_sched_engine_is_empty(sched_engine)) in i915_sched_engine_reset_on_empty()
77 sched_engine->no_priolist = false; in i915_sched_engine_reset_on_empty()
84 tasklet_lock(&sched_engine->tasklet); in i915_sched_engine_active_lock_bh()
90 tasklet_unlock(&sched_engine->tasklet); in i915_sched_engine_active_unlock_bh()
[all …]
A Di915_request.c241 spin_lock_irq(&locked->sched_engine->lock); in i915_request_active_engine()
243 spin_unlock(&locked->sched_engine->lock); in i915_request_active_engine()
245 spin_lock(&locked->sched_engine->lock); in i915_request_active_engine()
254 spin_unlock_irq(&locked->sched_engine->lock); in i915_request_active_engine()
564 lockdep_assert_held(&engine->sched_engine->lock); in __i915_request_submit()
1278 if (to->engine->sched_engine->schedule) { in __i915_request_await_execution()
1436 if (to->engine->sched_engine->schedule) { in i915_request_await_request()
1569 if (rq->engine->sched_engine->schedule) in __i915_request_ensure_parallel_ordering()
1619 if (rq->engine->sched_engine->schedule) in __i915_request_ensure_ordering()
1735 if (attr && rq->engine->sched_engine->schedule) in __i915_request_queue()
[all …]
A Di915_scheduler_types.h174 bool (*disabled)(struct i915_sched_engine *sched_engine);
A Di915_request.h664 lockdep_is_held(&rq->engine->sched_engine->lock)); in i915_request_active_timeline()
A Di915_gpu_error.c1482 spin_lock_irqsave(&engine->sched_engine->lock, flags); in capture_engine()
1484 spin_unlock_irqrestore(&engine->sched_engine->lock, in capture_engine()
/linux/drivers/gpu/drm/i915/gt/
A Dintel_execlists_submission.c372 &engine->sched_engine->requests, in __unwind_incomplete_requests()
1257 struct i915_sched_engine * const sched_engine = engine->sched_engine; in execlists_dequeue() local
1287 spin_lock(&sched_engine->lock); in execlists_dequeue()
1573 sched_engine->queue_priority_hint = queue_prio(sched_engine); in execlists_dequeue()
1575 spin_unlock(&sched_engine->lock); in execlists_dequeue()
2509 struct i915_sched_engine *sched_engine = engine->sched_engine; in submit_queue() local
3048 struct i915_sched_engine * const sched_engine = engine->sched_engine; in execlists_reset_cancel() local
3223 struct i915_sched_engine *sched_engine = engine->sched_engine; in kick_execlists() local
3514 if (ve->base.sched_engine) in rcu_virtual_context_destroy()
3829 if (!ve->base.sched_engine) { in execlists_create_virtual()
[all …]
A Dmock_engine.c240 lockdep_assert_held(&rq->engine->sched_engine->lock); in mock_add_to_engine()
256 spin_lock_irq(&locked->sched_engine->lock); in mock_remove_from_engine()
258 spin_unlock(&locked->sched_engine->lock); in mock_remove_from_engine()
259 spin_lock(&engine->sched_engine->lock); in mock_remove_from_engine()
263 spin_unlock_irq(&locked->sched_engine->lock); in mock_remove_from_engine()
284 spin_lock_irqsave(&engine->sched_engine->lock, flags); in mock_reset_cancel()
300 spin_unlock_irqrestore(&engine->sched_engine->lock, flags); in mock_reset_cancel()
314 i915_sched_engine_put(engine->sched_engine); in mock_engine_release()
382 if (!engine->sched_engine) in mock_engine_init()
384 engine->sched_engine->private_data = engine; in mock_engine_init()
[all …]
A Dintel_engine_cs.c826 if (!engine->sched_engine) { in engine_setup_common()
830 engine->sched_engine->private_data = engine; in engine_setup_common()
854 i915_sched_engine_put(engine->sched_engine); in engine_setup_common()
894 spin_lock_irq(&engine->sched_engine->lock); in measure_breadcrumb_dw()
898 spin_unlock_irq(&engine->sched_engine->lock); in measure_breadcrumb_dw()
1067 i915_sched_engine_put(engine->sched_engine); in intel_engine_cleanup_common()
1365 if (!i915_sched_engine_is_empty(engine->sched_engine)) in intel_engine_is_idle()
1610 &engine->sched_engine->tasklet.state)), in intel_engine_print_registers()
1825 lockdep_assert_held(&engine->sched_engine->lock); in engine_dump_active_requests()
1896 list_count(&engine->sched_engine->hold)); in intel_engine_dump()
[all …]
A Dintel_ring_submission.c349 spin_lock_irqsave(&engine->sched_engine->lock, flags); in reset_rewind()
351 list_for_each_entry(pos, &engine->sched_engine->requests, sched.link) { in reset_rewind()
406 spin_unlock_irqrestore(&engine->sched_engine->lock, flags); in reset_rewind()
418 spin_lock_irqsave(&engine->sched_engine->lock, flags); in reset_cancel()
427 spin_unlock_irqrestore(&engine->sched_engine->lock, flags); in reset_cancel()
602 lockdep_assert_held(&engine->sched_engine->lock); in ring_context_ban()
603 list_for_each_entry_continue(rq, &engine->sched_engine->requests, in ring_context_ban()
1091 lockdep_assert_held(&rq->engine->sched_engine->lock); in add_to_engine()
1092 list_move_tail(&rq->sched.link, &rq->engine->sched_engine->requests); in add_to_engine()
1097 spin_lock_irq(&rq->engine->sched_engine->lock); in remove_from_engine()
[all …]
A Dintel_engine_heartbeat.c131 if (i915_sched_engine_disabled(engine->sched_engine)) { in heartbeat()
155 } else if (engine->sched_engine->schedule && in heartbeat()
170 engine->sched_engine->schedule(rq, &attr); in heartbeat()
A Dselftest_execlists.c46 tasklet_hi_schedule(&engine->sched_engine->tasklet); in wait_for_submit()
276 engine->sched_engine->schedule(rq[1], &attr); in live_unlite_restore()
631 engine->sched_engine->tasklet.callback(&engine->sched_engine->tasklet); in live_hold_reset()
920 engine->sched_engine->schedule(rq, &attr); in release_queue()
1345 engine->sched_engine->schedule(rq, &attr); in live_timeslice_queue()
1887 engine->sched_engine->schedule(rq, &attr); in live_late_preempt()
2632 engine->sched_engine->schedule(rq, &attr); in live_chain_preempt()
2991 engine->sched_engine->schedule(rq, &attr); in live_preempt_gang()
3239 engine->sched_engine->schedule(rq, &attr); in preempt_user()
4387 engine->sched_engine->tasklet.callback(&engine->sched_engine->tasklet); in reset_virtual_engine()
[all …]
A Dintel_breadcrumbs.c248 if (rq->engine->sched_engine->retire_inflight_request_prio) in signal_irq_work()
249 rq->engine->sched_engine->retire_inflight_request_prio(rq); in signal_irq_work()
A Dintel_engine_pm.c291 GEM_BUG_ON(engine->sched_engine->queue_priority_hint != INT_MIN); in __engine_park()
A Dintel_engine_types.h306 struct i915_sched_engine *sched_engine; member
A Dintel_engine_user.c112 if (engine->sched_engine->schedule) in set_scheduler_caps()
A Dselftest_reset.c324 struct tasklet_struct *t = &engine->sched_engine->tasklet; in igt_atomic_engine_reset()
A Dselftest_lrc.c52 tasklet_hi_schedule(&engine->sched_engine->tasklet); in wait_for_submit()
1616 tasklet_disable(&engine->sched_engine->tasklet); in garbage_reset()
1621 tasklet_enable(&engine->sched_engine->tasklet); in garbage_reset()
A Dselftest_hangcheck.c935 if (engine->sched_engine->schedule && arg->flags & TEST_PRIORITY) { in active_engine()
940 engine->sched_engine->schedule(rq[idx], &attr); in active_engine()
1878 struct tasklet_struct * const t = &engine->sched_engine->tasklet; in __igt_atomic_reset_engine()
/linux/drivers/gpu/drm/i915/gt/uc/
A Dintel_guc_submission.c858 struct i915_sched_engine * const sched_engine = guc->sched_engine; in guc_dequeue_one_context() local
1083 struct i915_sched_engine * const sched_engine = guc->sched_engine; in submission_disabled() local
1091 struct i915_sched_engine * const sched_engine = guc->sched_engine; in disable_submission() local
1102 struct i915_sched_engine * const sched_engine = guc->sched_engine; in enable_submission() local
1120 struct i915_sched_engine * const sched_engine = guc->sched_engine; in guc_flush_submissions() local
1385 if (!sched_engine) in guc_cancel_sched_engine_requests()
1568 struct i915_sched_engine *sched_engine = rq->engine->sched_engine; in need_tasklet() local
1578 struct i915_sched_engine *sched_engine = rq->engine->sched_engine; in guc_submit_request() local
3450 engine->sched_engine = i915_sched_engine_get(guc->sched_engine); in intel_guc_submission_setup()
3853 struct i915_sched_engine *sched_engine = guc->sched_engine; in intel_guc_submission_print_info() local
[all …]
A Dintel_guc.h42 struct i915_sched_engine *sched_engine; member
/linux/drivers/gpu/drm/i915/gem/
A Di915_gem_wait.c107 if (engine->sched_engine->schedule) in fence_set_priority()
108 engine->sched_engine->schedule(rq, attr); in fence_set_priority()

Completed in 80 milliseconds