Skip to content

Commit 9ef36fc

Browse files
icklejlahtine-intel
authored andcommitted
drm/i915: Disable semaphore inter-engine sync without timeslicing
Since the removal of the no-semaphore boosting, we rely on timeslicing to reorder passed inter-dependency hogs across the engines. However, we require preemption to support timeslicing into user payloads, and not all machine support preemption so we do not universally enable timeslicing, even when it would correctly preempt our own inter-engine semaphores. Since timeslicing and semaphore priority deboosting is now disabled on Broadwell/Braswell, we have to follow suite and not use semaphores. Testcase: igt/gem_exec_schedule/semaphore-codependency # bdw/bsw Fixes: 18e4af0 ("drm/i915: Drop no-semaphore boosting") Signed-off-by: Chris Wilson <[email protected]> Cc: Tvrtko Ursulin <[email protected]> Cc: Mika Kuoppala <[email protected]> Reviewed-by: Tvrtko Ursulin <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected] (cherry picked from commit 0eb670a) Signed-off-by: Joonas Lahtinen <[email protected]>
1 parent b7ccc78 commit 9ef36fc

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

drivers/gpu/drm/i915/gem/i915_gem_context.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -230,7 +230,7 @@ static void intel_context_set_gem(struct intel_context *ce,
230230
ce->timeline = intel_timeline_get(ctx->timeline);
231231

232232
if (ctx->sched.priority >= I915_PRIORITY_NORMAL &&
233-
intel_engine_has_semaphores(ce->engine))
233+
intel_engine_has_timeslices(ce->engine))
234234
__set_bit(CONTEXT_USE_SEMAPHORES, &ce->flags);
235235
}
236236

@@ -1969,7 +1969,7 @@ static int __apply_priority(struct intel_context *ce, void *arg)
19691969
{
19701970
struct i915_gem_context *ctx = arg;
19711971

1972-
if (!intel_engine_has_semaphores(ce->engine))
1972+
if (!intel_engine_has_timeslices(ce->engine))
19731973
return 0;
19741974

19751975
if (ctx->sched.priority >= I915_PRIORITY_NORMAL)

0 commit comments

Comments
 (0)