aboutsummaryrefslogtreecommitdiff
path: root/tests/kms_vblank.c
diff options
context:
space:
mode:
Diffstat (limited to 'tests/kms_vblank.c')
-rw-r--r--tests/kms_vblank.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/tests/kms_vblank.c b/tests/kms_vblank.c
index babef39d0..8076e136c 100644
--- a/tests/kms_vblank.c
+++ b/tests/kms_vblank.c
@@ -283,7 +283,16 @@ static void vblank_query(data_t *data, int fd, int nchildren)
vbl.request.sequence = 0;
igt_assert_eq(wait_vblank(fd, &vbl), 0);
count++;
- } while ((vbl.reply.sequence - sq) <= 120);
+
+ /*
+ * break the loop and fail after 10 seconds to prevent hang.
+ * Ideally, it should take only 2 seconds for 120 vblank in 60 fps.
+ */
+ clock_gettime(CLOCK_MONOTONIC, &end);
+ igt_assert_f(end.tv_sec - start.tv_sec < 10,
+ "VBlank Sequence number increased by only %lu in %lu seconds.\n",
+ vbl.reply.sequence - sq, end.tv_sec - start.tv_sec);
+ } while (vbl.reply.sequence <= (sq + 120));
clock_gettime(CLOCK_MONOTONIC, &end);
igt_info("Time to query current counter (%s): %7.3fµs\n",