Skip to content

Commit

Permalink
drm/i915/selftests: Small tweak to put the termination conditions tog…
Browse files Browse the repository at this point in the history
…ether

If we run out of ring space, or exceed the desired runtime, we wish to
stop the subtest. Put these checks together, so that we always keep the
requests flushed on completion.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20201120140314.24749-3-chris@chris-wilson.co.uk
  • Loading branch information
Chris Wilson committed Nov 20, 2020
1 parent 8005f37 commit 16cfcb0
Showing 1 changed file with 6 additions and 7 deletions.
13 changes: 6 additions & 7 deletions drivers/gpu/drm/i915/gt/selftest_timeline.c
Original file line number Diff line number Diff line change
Expand Up @@ -1090,12 +1090,6 @@ static int live_hwsp_read(void *arg)
}
count++;

if (8 * watcher[1].rq->ring->emit >
3 * watcher[1].rq->ring->size) {
i915_request_put(rq);
break;
}

/* Flush the timeline before manually wrapping again */
if (i915_request_wait(rq,
I915_WAIT_INTERRUPTIBLE,
Expand All @@ -1104,9 +1098,14 @@ static int live_hwsp_read(void *arg)
i915_request_put(rq);
goto out;
}

retire_requests(tl);
i915_request_put(rq);

/* Single requests are limited to half a ring at most */
if (8 * watcher[1].rq->ring->emit >
3 * watcher[1].rq->ring->size)
break;

} while (!__igt_timeout(end_time, NULL));
WRITE_ONCE(*(u32 *)tl->hwsp_seqno, 0xdeadbeef);

Expand Down

0 comments on commit 16cfcb0

Please sign in to comment.