summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tests/gem_wait_render_timeout.c13
1 files changed, 11 insertions, 2 deletions
diff --git a/tests/gem_wait_render_timeout.c b/tests/gem_wait_render_timeout.c
index 0da5122e..e19b3c44 100644
--- a/tests/gem_wait_render_timeout.c
+++ b/tests/gem_wait_render_timeout.c
@@ -180,15 +180,18 @@ int main(int argc, char **argv)
exit(EXIT_FAILURE);
}
assert(gem_bo_busy(fd, dst2->handle) == false);
-
assert(timeout != 0);
-
if (timeout == (ENOUGH_WORK_IN_SECONDS * NSEC_PER_SEC))
printf("Buffer was already done!\n");
else {
printf("Finished with %lu time remaining\n", timeout);
}
+ /* check that polling with timeout=0 works. */
+ timeout = 0;
+ assert(gem_bo_wait_timeout(fd, dst2->handle, &timeout) == 0);
+ assert(timeout == 0);
+
/* Now check that we correctly time out, twice the auto-tune load should
* be good enough. */
timeout = ENOUGH_WORK_IN_SECONDS * NSEC_PER_SEC;
@@ -202,6 +205,12 @@ int main(int argc, char **argv)
assert(timeout == 0);
assert(gem_bo_busy(fd, dst2->handle) == true);
+ /* check that polling with timeout=0 works. */
+ timeout = 0;
+ assert(gem_bo_wait_timeout(fd, dst2->handle, &timeout) == -ETIME);
+ assert(timeout == 0);
+
+
if (do_signals)
drmtest_stop_signal_helper();
drm_intel_bo_unreference(dst2);