diff options
-rw-r--r-- | tests/gem_wait_render_timeout.c | 13 |
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); |