>-----Original Message----- >From: Intel-gfx <intel-gfx-bounces@xxxxxxxxxxxxxxxxxxxxx> On Behalf Of Chris >Wilson >Sent: Friday, April 3, 2020 3:02 PM >To: intel-gfx@xxxxxxxxxxxxxxxxxxxxx >Cc: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> >Subject: [PATCH] drm/i915/selftests: Wait until we start timeslicing >after a submit > >If we submit, we do not start timeslicnig until we process the CS event s/timeslicnig/timeslicing/ >that marks the start of the context running on HW. So in the selftest, >be sure to wait until we have processed the pending events before >asserting that timeslicing has begun. > >Signed-off-by: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx> >--- > drivers/gpu/drm/i915/gt/selftest_lrc.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > >diff --git a/drivers/gpu/drm/i915/gt/selftest_lrc.c >b/drivers/gpu/drm/i915/gt/selftest_lrc.c >index 985d4041d929..9e02917695b1 100644 >--- a/drivers/gpu/drm/i915/gt/selftest_lrc.c >+++ b/drivers/gpu/drm/i915/gt/selftest_lrc.c >@@ -1244,7 +1244,11 @@ static int live_timeslice_queue(void *arg) > if (err) > goto err_rq; > >- intel_engine_flush_submission(engine); >+ /* Wait until we ack the release_queue and start timeslicing >*/ >+ do { >+ intel_engine_flush_submission(engine); >+ } while (READ_ONCE(engine->execlists.pending[0])); Is this guaranteed to clear? Or should there be a count to protect against the endless loop? Or am I too paranoid? 😊 M > if (!READ_ONCE(engine->execlists.timer.expires) && > !i915_request_completed(rq)) { > struct drm_printer p = >-- >2.20.1 > >_______________________________________________ >Intel-gfx mailing list >Intel-gfx@xxxxxxxxxxxxxxxxxxxxx >https://lists.freedesktop.org/mailman/listinfo/intel-gfx _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx