Leaving the GPU running after we exit can mess up timing dependent tests we run afterwards. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=64270 Signed-off-by: Imre Deak <imre.deak at intel.com> --- tests/gem_wait_render_timeout.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tests/gem_wait_render_timeout.c b/tests/gem_wait_render_timeout.c index 14482e3..9ec4e49 100644 --- a/tests/gem_wait_render_timeout.c +++ b/tests/gem_wait_render_timeout.c @@ -216,6 +216,11 @@ int main(int argc, char **argv) assert(gem_bo_wait_timeout(fd, dst2->handle, &timeout) == -ETIME); assert(timeout == 0); + /* Make sure we exit only after the GPU is idle. Apply some fuzz + * to the timeout since the calibrated iteration count can be + * twice the amount the GPU can execute in a second. */ + timeout = 5 * ENOUGH_WORK_IN_SECONDS * NSEC_PER_SEC; + assert(gem_bo_wait_timeout(fd, dst2->handle, &timeout) == 0); if (do_signals) drmtest_stop_signal_helper(); -- 1.8.1.2