Message ID | 20170328180029.1073-1-michal.winiarski@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Tue, Mar 28, 2017 at 08:00:26PM +0200, Michał Winiarski wrote: > Since request can be unsubmitted, we need to avoid overriding its priority > during submission. Otherwise we won't be able to resubmit it with > correct priority. > > Cc: Chris Wilson <chris@chris-wilson.co.uk> > Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> > Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> > Signed-off-by: Michał Winiarski <michal.winiarski@intel.com> > --- > drivers/gpu/drm/i915/i915_guc_submission.c | 1 - > drivers/gpu/drm/i915/intel_lrc.c | 1 - > 2 files changed, 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_guc_submission.c b/drivers/gpu/drm/i915/i915_guc_submission.c > index 6193ad7..082f8ae 100644 > --- a/drivers/gpu/drm/i915/i915_guc_submission.c > +++ b/drivers/gpu/drm/i915/i915_guc_submission.c > @@ -692,7 +692,6 @@ static bool i915_guc_dequeue(struct intel_engine_cs *engine) > rb = rb_next(rb); > rb_erase(&rq->priotree.node, &engine->execlist_queue); > RB_CLEAR_NODE(&rq->priotree.node); > - rq->priotree.priority = INT_MAX; This still breaks execlists_schedule(). -Chris
diff --git a/drivers/gpu/drm/i915/i915_guc_submission.c b/drivers/gpu/drm/i915/i915_guc_submission.c index 6193ad7..082f8ae 100644 --- a/drivers/gpu/drm/i915/i915_guc_submission.c +++ b/drivers/gpu/drm/i915/i915_guc_submission.c @@ -692,7 +692,6 @@ static bool i915_guc_dequeue(struct intel_engine_cs *engine) rb = rb_next(rb); rb_erase(&rq->priotree.node, &engine->execlist_queue); RB_CLEAR_NODE(&rq->priotree.node); - rq->priotree.priority = INT_MAX; i915_guc_submit(rq); trace_i915_gem_request_in(rq, port - engine->execlist_port); diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c index b0c3a02..301ae7c 100644 --- a/drivers/gpu/drm/i915/intel_lrc.c +++ b/drivers/gpu/drm/i915/intel_lrc.c @@ -488,7 +488,6 @@ static void execlists_dequeue(struct intel_engine_cs *engine) rb = rb_next(rb); rb_erase(&cursor->priotree.node, &engine->execlist_queue); RB_CLEAR_NODE(&cursor->priotree.node); - cursor->priotree.priority = INT_MAX; __i915_gem_request_submit(cursor); trace_i915_gem_request_in(cursor, port - engine->execlist_port);
Since request can be unsubmitted, we need to avoid overriding its priority during submission. Otherwise we won't be able to resubmit it with correct priority. Cc: Chris Wilson <chris@chris-wilson.co.uk> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com> Cc: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Signed-off-by: Michał Winiarski <michal.winiarski@intel.com> --- drivers/gpu/drm/i915/i915_guc_submission.c | 1 - drivers/gpu/drm/i915/intel_lrc.c | 1 - 2 files changed, 2 deletions(-)