mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-04-29 11:44:39 -04:00
drm/i915: Rely on direct submission to the queue
Drop the pretense of kicking the tasklet (used only for the defunct guc submission backend, it should just take ownership of the submit!) and so remove the bh-kicking from around submission. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20200323092841.22240-5-chris@chris-wilson.co.uk
This commit is contained in:
@@ -2386,9 +2386,7 @@ static void eb_request_add(struct i915_execbuffer *eb)
|
||||
__i915_request_skip(rq);
|
||||
}
|
||||
|
||||
local_bh_disable();
|
||||
__i915_request_queue(rq, &attr);
|
||||
local_bh_enable(); /* Kick the execlists tasklet if just scheduled */
|
||||
|
||||
/* Try to clean up the client's timeline after submitting the request */
|
||||
if (prev)
|
||||
|
||||
@@ -2891,10 +2891,7 @@ static void __submit_queue_imm(struct intel_engine_cs *engine)
|
||||
if (reset_in_progress(execlists))
|
||||
return; /* defer until we restart the engine following reset */
|
||||
|
||||
if (execlists->tasklet.func == execlists_submission_tasklet)
|
||||
__execlists_submission_tasklet(engine);
|
||||
else
|
||||
tasklet_hi_schedule(&execlists->tasklet);
|
||||
__execlists_submission_tasklet(engine);
|
||||
}
|
||||
|
||||
static void submit_queue(struct intel_engine_cs *engine,
|
||||
|
||||
@@ -1444,9 +1444,7 @@ void i915_request_add(struct i915_request *rq)
|
||||
if (list_empty(&rq->sched.signalers_list))
|
||||
attr.priority |= I915_PRIORITY_WAIT;
|
||||
|
||||
local_bh_disable();
|
||||
__i915_request_queue(rq, &attr);
|
||||
local_bh_enable(); /* Kick the execlists tasklet if just scheduled */
|
||||
|
||||
mutex_unlock(&tl->mutex);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user