[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 Oct 8 06:23:04 UTC 2021
> -----Original Message-----
> From: B S, Karthik <karthik.b.s at intel.com>
> Sent: Friday, October 8, 2021 11:49 AM
> To: Srinivas, Vidya <vidya.srinivas at intel.com>; 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
> Subject: Re: [PATCH i-g-t] tests/kms_plane_multiple: Fix regression
> test_plane_position_with_output
>
> On 9/24/2021 4:15 PM, Vidya Srinivas wrote:
> > 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>
> Reviewed-by: Karthik B S <karthik.b.s at intel.com>
Thank you so much Karthik. @Modem, Bhanuprakash can you kindly check and help merge? Thanks a lot.
Regards
Vidya
> > ---
> > 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++;
> > }
> >
>
More information about the igt-dev
mailing list