From 4fec18e5e0cbbf384b8a49febd9dc650f2712bad Mon Sep 17 00:00:00 2001 From: Daniel Vetter Date: Fri, 27 Feb 2015 20:24:15 +0100 Subject: [PATCH] lib/core: add interactive debug point to igt_fail Useful for inspecting the screen state in kms tests when they fail. Also move the screen clearing in kms_cursor_crc to the bottom. Signed-off-by: Daniel Vetter --- lib/igt_core.c | 2 ++ tests/kms_cursor_crc.c | 5 +++-- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/lib/igt_core.c b/lib/igt_core.c index 4ae35240..962b878c 100644 --- a/lib/igt_core.c +++ b/lib/igt_core.c @@ -918,6 +918,8 @@ void igt_fail(int exitcode) { assert(exitcode != IGT_EXIT_SUCCESS && exitcode != IGT_EXIT_SKIP); + igt_debug_wait_for_keypress("failure"); + if (!failed_one) igt_exitcode = exitcode; diff --git a/tests/kms_cursor_crc.c b/tests/kms_cursor_crc.c index fca82487..d5b681a0 100644 --- a/tests/kms_cursor_crc.c +++ b/tests/kms_cursor_crc.c @@ -130,13 +130,14 @@ static void do_single_test(data_t *data, int x, int y) /* Now render the same in software and collect crc */ draw_cursor(cr, x, y, data->curw, data->curh); igt_display_commit(display); + igt_wait_for_vblank(data->drm_fd, data->pipe); igt_pipe_crc_collect_crc(pipe_crc, &ref_crc); /* Clear screen afterwards */ + igt_assert(igt_crc_equal(&crc, &ref_crc)); + igt_paint_color(cr, 0, 0, data->screenw, data->screenh, 0.0, 0.0, 0.0); - - igt_assert(igt_crc_equal(&crc, &ref_crc)); } static void do_fail_test(data_t *data, int x, int y, int expect)