Re: [PATCH] drm/i915/selftests: Wait until we start timeslicing after a submit

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



>-----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




[Index of Archives]     [AMD Graphics]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux