From 5d1c82954995b36943ed7f812bf9637ce3fbd47d Mon Sep 17 00:00:00 2001 From: Maarten Lankhorst Date: Tue, 24 Jul 2018 15:59:26 +0200 Subject: tests: Replace calls to igt_pipe_crc_drain + get_single with igt_pipe_crc_get_current() This is a more race free of accomplishing the same. Signed-off-by: Maarten Lankhorst Reviewed-by: Daniel Vetter --- tests/kms_available_modes_crc.c | 9 +++------ tests/kms_cursor_legacy.c | 3 +-- tests/kms_plane.c | 6 +----- tests/kms_plane_lowres.c | 6 ++---- tests/kms_plane_multiple.c | 3 +-- tests/kms_rotation_crc.c | 13 +++++-------- 6 files changed, 13 insertions(+), 27 deletions(-) diff --git a/tests/kms_available_modes_crc.c b/tests/kms_available_modes_crc.c index b70ef5d7..b67b4f83 100644 --- a/tests/kms_available_modes_crc.c +++ b/tests/kms_available_modes_crc.c @@ -101,8 +101,7 @@ static void generate_comparison_crc_list(data_t *data, igt_output_t *output) igt_plane_set_fb(primary, &data->primary_fb); igt_display_commit2(&data->display, data->commit); - igt_pipe_crc_drain(data->pipe_crc); - igt_pipe_crc_get_single(data->pipe_crc, &data->cursor_crc); + igt_pipe_crc_get_current(data->gfx_fd, data->pipe_crc, &data->cursor_crc); igt_plane_set_fb(primary, NULL); igt_display_commit2(&data->display, data->commit); @@ -113,8 +112,7 @@ static void generate_comparison_crc_list(data_t *data, igt_output_t *output) igt_plane_set_fb(primary, &data->primary_fb); igt_display_commit2(&data->display, data->commit); - igt_pipe_crc_drain(data->pipe_crc); - igt_pipe_crc_get_single(data->pipe_crc, &data->fullscreen_crc); + igt_pipe_crc_get_current(data->gfx_fd, data->pipe_crc, &data->fullscreen_crc); cairo_destroy(cr); igt_remove_fb(data->gfx_fd, &data->primary_fb); @@ -400,8 +398,7 @@ test_one_mode(data_t* data, igt_output_t *output, igt_plane_t* plane, igt_display_commit2(&data->display, data->commit); if (do_crc) { - igt_pipe_crc_drain(data->pipe_crc); - igt_pipe_crc_get_single(data->pipe_crc, ¤t_crc); + igt_pipe_crc_get_current(data->gfx_fd, data->pipe_crc, ¤t_crc); if (plane->type != DRM_PLANE_TYPE_CURSOR) { if (!igt_check_crc_equal(¤t_crc, diff --git a/tests/kms_cursor_legacy.c b/tests/kms_cursor_legacy.c index 85340d43..82ceebcb 100644 --- a/tests/kms_cursor_legacy.c +++ b/tests/kms_cursor_legacy.c @@ -1334,8 +1334,7 @@ static void flip_vs_cursor_busy_crc(igt_display_t *display, bool atomic) igt_assert_eq(get_vblank(display->drm_fd, pipe, 0), vblank_start); - igt_pipe_crc_drain(pipe_crc); - igt_pipe_crc_get_single(pipe_crc, &test_crc); + igt_pipe_crc_get_current(display->drm_fd, pipe_crc, &test_crc); igt_spin_batch_free(display->drm_fd, spin); diff --git a/tests/kms_plane.c b/tests/kms_plane.c index f9e123f0..3999dde8 100644 --- a/tests/kms_plane.c +++ b/tests/kms_plane.c @@ -419,11 +419,7 @@ static void test_format_plane_color(data_t *data, enum pipe pipe, igt_plane_set_fb(plane, fb); igt_display_commit2(&data->display, data->display.is_atomic ? COMMIT_ATOMIC : COMMIT_UNIVERSAL); - - /* make sure the crc we get is for the new fb */ - igt_wait_for_vblank(data->drm_fd, pipe); - igt_pipe_crc_drain(data->pipe_crc); - igt_pipe_crc_get_single(data->pipe_crc, crc); + igt_pipe_crc_get_current(data->display.drm_fd, data->pipe_crc, crc); igt_remove_fb(data->drm_fd, &old_fb); } diff --git a/tests/kms_plane_lowres.c b/tests/kms_plane_lowres.c index d1e4b3ca..5e83ef56 100644 --- a/tests/kms_plane_lowres.c +++ b/tests/kms_plane_lowres.c @@ -221,8 +221,7 @@ test_plane_position_with_output(data_t *data, enum pipe pipe, check_mode(&mode_lowres, mode2); igt_display_commit2(&data->display, COMMIT_ATOMIC); - igt_pipe_crc_drain(pipe_crc); - igt_pipe_crc_get_single(pipe_crc, &crc_lowres); + igt_pipe_crc_get_current(data->display.drm_fd, pipe_crc, &crc_lowres); igt_assert_plane_visible(data->drm_fd, pipe, false); @@ -236,8 +235,7 @@ test_plane_position_with_output(data_t *data, enum pipe pipe, igt_display_commit2(&data->display, COMMIT_ATOMIC); - igt_pipe_crc_drain(pipe_crc); - igt_pipe_crc_get_single(pipe_crc, &crc_hires2); + igt_pipe_crc_get_current(data->display.drm_fd, pipe_crc, &crc_hires2); igt_assert_plane_visible(data->drm_fd, pipe, true); diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c index e61bc846..a53be001 100644 --- a/tests/kms_plane_multiple.c +++ b/tests/kms_plane_multiple.c @@ -276,8 +276,7 @@ test_plane_position_with_output(data_t *data, enum pipe pipe, igt_display_commit2(&data->display, COMMIT_ATOMIC); - igt_pipe_crc_drain(data->pipe_crc); - igt_pipe_crc_get_single(data->pipe_crc, &crc); + igt_pipe_crc_get_current(data->display.drm_fd, data->pipe_crc, &crc); igt_assert_crc_equal(&data->ref_crc, &crc); diff --git a/tests/kms_rotation_crc.c b/tests/kms_rotation_crc.c index 6cb5858a..b994cc5d 100644 --- a/tests/kms_rotation_crc.c +++ b/tests/kms_rotation_crc.c @@ -235,8 +235,8 @@ static void prepare_fbs(data_t *data, igt_output_t *output, if (plane->type != DRM_PLANE_TYPE_CURSOR) igt_plane_set_position(plane, data->pos_x, data->pos_y); igt_display_commit2(display, COMMIT_ATOMIC); - igt_pipe_crc_drain(data->pipe_crc); - igt_pipe_crc_get_single(data->pipe_crc, &data->flip_crc); + + igt_pipe_crc_get_current(display->drm_fd, data->pipe_crc, &data->flip_crc); /* * Prepare the non-rotated flip fb. @@ -259,8 +259,7 @@ static void prepare_fbs(data_t *data, igt_output_t *output, igt_plane_set_position(plane, data->pos_x, data->pos_y); igt_display_commit2(display, COMMIT_ATOMIC); - igt_pipe_crc_drain(data->pipe_crc); - igt_pipe_crc_get_single(data->pipe_crc, &data->ref_crc); + igt_pipe_crc_get_current(display->drm_fd, data->pipe_crc, &data->ref_crc); /* * Prepare the non-rotated reference fb. @@ -310,8 +309,7 @@ static void test_single_case(data_t *data, enum pipe pipe, igt_assert_eq(ret, 0); /* Check CRC */ - igt_pipe_crc_drain(data->pipe_crc); - igt_pipe_crc_get_single(data->pipe_crc, &crc_output); + igt_pipe_crc_get_current(display->drm_fd, data->pipe_crc, &crc_output); igt_assert_crc_equal(&data->ref_crc, &crc_output); /* @@ -334,8 +332,7 @@ static void test_single_case(data_t *data, enum pipe pipe, igt_assert_eq(ret, 0); } kmstest_wait_for_pageflip(data->gfx_fd); - igt_pipe_crc_drain(data->pipe_crc); - igt_pipe_crc_get_single(data->pipe_crc, &crc_output); + igt_pipe_crc_get_current(display->drm_fd, data->pipe_crc, &crc_output); igt_assert_crc_equal(&data->flip_crc, &crc_output); } -- cgit v1.2.3