Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> writes: > [ text/plain ] > Having fixed the tracking of the engine's last_submitted_seqno, we can > now rely on it for detecting when the engine is idle (and not have to > touch the requests pointer). > > Testcase: igt/gem_exec_whisper > Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> > Cc: Mika Kuoppala <mika.kuoppala@xxxxxxxxxxxxxxx> > Cc: Joonas Lahtinen <joonas.lahtinen@xxxxxxxxxxxxxxx> > --- > drivers/gpu/drm/i915/i915_irq.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c > index c85eb8dec2dc..a56be4f92264 100644 > --- a/drivers/gpu/drm/i915/i915_irq.c > +++ b/drivers/gpu/drm/i915/i915_irq.c > @@ -2805,8 +2805,7 @@ static void gen8_disable_vblank(struct drm_device *dev, unsigned int pipe) > static bool > ring_idle(struct intel_engine_cs *engine, u32 seqno) > { > - return (list_empty(&engine->request_list) || > - i915_seqno_passed(seqno, engine->last_submitted_seqno)); > + return i915_seqno_passed(seqno, engine->last_submitted_seqno); My concern here is that we should move the write for the last_submitted_seqno before we push the work into ring. To guarantee that the driver never sees a seqno > last_submitted_seqno on particular ring. -Mika > } > > static bool > -- > 2.8.0.rc3 _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx