[igt-dev] [PATCH i-g-t] tests/kms_plane_multiple: Fix regression test_plane_position_with_output
Srinivas, Vidya
vidya.srinivas at intel.com
Fri Sep 24 11:04:38 UTC 2021
Hello Victor, Jacob, Siqueira,
Could you kindly check if this change would cause regression back on AMD?
Regards
Vidya
> -----Original Message-----
> From: Srinivas, Vidya <vidya.srinivas at intel.com>
> Sent: Friday, September 24, 2021 4:16 PM
> To: igt-dev at lists.freedesktop.org
> Cc: Modem, Bhanuprakash <bhanuprakash.modem at intel.com>;
> markyacoub at google.com; victorchengchi.lu at amd.com;
> Anson.Jacob at amd.com; Rodrigo.Siqueira at amd.com; B S, Karthik
> <karthik.b.s at intel.com>; Srinivas, Vidya <vidya.srinivas at intel.com>
> Subject: [PATCH i-g-t] tests/kms_plane_multiple: Fix regression
> test_plane_position_with_output
>
> Starting commit 4d4a76729b328b65122 "Start continuous CRC capture after
> commit"
> few variants of Intel TGL and JSL devices are failing with CRC mismatch due to
> time sensitivity. Patch switches to older way of obtaining CRC, but keeps in-
> tact continuous CRC collection within the iteration and includes checking of
> i915 to not cause regression on non-intel devices.
>
> v2: Fixed review comments from Karthik.
>
> Signed-off-by: Vidya Srinivas <vidya.srinivas at intel.com>
> ---
> tests/kms_plane_multiple.c | 16 ++++++++--------
> 1 file changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/tests/kms_plane_multiple.c b/tests/kms_plane_multiple.c index
> 45cabb500774..c11ff333ab0a 100644
> --- a/tests/kms_plane_multiple.c
> +++ b/tests/kms_plane_multiple.c
> @@ -79,8 +79,6 @@ static void test_init(data_t *data, enum pipe pipe, int
> n_planes)
>
> static void test_fini(data_t *data, igt_output_t *output, int n_planes) {
> - igt_pipe_crc_stop(data->pipe_crc);
> -
> /* reset the constraint on the pipe */
> igt_output_set_pipe(output, PIPE_ANY);
>
> @@ -291,7 +289,6 @@ test_plane_position_with_output(data_t *data,
> enum pipe pipe,
> igt_plane_t *plane;
> int i;
> int err, c = 0;
> - int crc_enabled = 0;
> int iterations = opt.iterations < 1 ? 1 : opt.iterations;
> bool loop_forever;
> char info[256];
> @@ -334,15 +331,20 @@ test_plane_position_with_output(data_t *data,
> enum pipe pipe,
> i = 0;
> while (i < iterations || loop_forever) {
> /* randomize planes and set up the holes */
> +
> + /* Intel devices need it here, timing sensitive on few devices
> */
> + if (is_i915_device(data->drm_fd))
> + igt_pipe_crc_start(data->pipe_crc);
> +
> prepare_planes(data, pipe, &blue, tiling, c, output);
>
> igt_display_commit2(&data->display, COMMIT_ATOMIC);
> - if (!crc_enabled) {
> + if (!is_i915_device(data->drm_fd))
> igt_pipe_crc_start(data->pipe_crc);
> - crc_enabled = 1;
> - }
>
> igt_pipe_crc_get_current(data->display.drm_fd, data-
> >pipe_crc, &crc);
> + igt_assert_crc_equal(&data->ref_crc, &crc);
> + igt_pipe_crc_stop(data->pipe_crc);
>
> for_each_plane_on_pipe(&data->display, pipe, plane)
> igt_plane_set_fb(plane, NULL);
> @@ -352,8 +354,6 @@ test_plane_position_with_output(data_t *data,
> enum pipe pipe,
> for (int x = 0; x < c; x++)
> igt_remove_fb(data->drm_fd, &data->fb[x]);
>
> - igt_assert_crc_equal(&data->ref_crc, &crc);
> -
> i++;
> }
>
> --
> 2.33.0
More information about the igt-dev
mailing list