All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH i-g-t] igt/perf_pmu: Flush to idle after hang
@ 2018-05-25 15:14 ` Chris Wilson
  0 siblings, 0 replies; 10+ messages in thread
From: Chris Wilson @ 2018-05-25 15:14 UTC (permalink / raw)
  To: intel-gfx; +Cc: igt-dev

We may not idle immediately after a hang, and indeed may send a pulse
down the pipeline periodically to become idle. Rather than make a flimsy
assumption about how long we need to sleep before the system idles,
wait for the system to declare itself idle; flushing it to idle in the
process!

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Tvrtko Ursulin <tvrtko.ursulin@linux.intel.com>
---
 tests/perf_pmu.c | 11 ++---------
 1 file changed, 2 insertions(+), 9 deletions(-)

diff --git a/tests/perf_pmu.c b/tests/perf_pmu.c
index 590e6526b..9af192dd8 100644
--- a/tests/perf_pmu.c
+++ b/tests/perf_pmu.c
@@ -281,16 +281,9 @@ single(int gem_fd, const struct intel_execution_engine2 *e, unsigned int flags)
 
 	/* Check for idle after hang. */
 	if (flags & FLAG_HANG) {
-		/* Sleep for a bit for reset unwind to settle. */
-		usleep(500e3);
-		/*
-		 * Ensure batch was executing before reset, meaning it must be
-		 * idle by now. Unless it did not even manage to start before we
-		 * triggered the reset, in which case the idleness check below
-		 * might fail. The latter is very unlikely since there are two
-		 * sleeps during which it had an opportunity to start.
-		 */
+		gem_quiescent_gpu(gem_fd);
 		igt_assert(!gem_bo_busy(gem_fd, spin->handle));
+
 		val = pmu_read_single(fd);
 		slept = measured_usleep(batch_duration_ns / 1000);
 		val = pmu_read_single(fd) - val;
-- 
2.17.0

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 10+ messages in thread

end of thread, other threads:[~2018-05-30 10:57 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-25 15:14 [PATCH i-g-t] igt/perf_pmu: Flush to idle after hang Chris Wilson
2018-05-25 15:14 ` [igt-dev] " Chris Wilson
2018-05-25 16:12 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
2018-05-26  0:50 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2018-05-29 20:05 ` [igt-dev] [PATCH i-g-t] " Antonio Argenziano
2018-05-29 20:05   ` Antonio Argenziano
2018-05-30 10:48 ` Tvrtko Ursulin
2018-05-30 10:48   ` [igt-dev] " Tvrtko Ursulin
2018-05-30 10:57   ` Chris Wilson
2018-05-30 10:57     ` [Intel-gfx] " Chris Wilson

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.