On Thu, 2017-08-03 at 10:11 +0300, Lofstedt, Marta wrote: > Before merge, please add: > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=101907 > > Reviewed-by: Marta Lofstedt <marta.lofstedt@xxxxxxxxx> > OK. I'll update the commit message. Cheers, Mika > > > > -----Original Message----- > > From: Kahola, Mika > > Sent: Thursday, August 3, 2017 9:54 AM > > To: intel-gfx@xxxxxxxxxxxxxxxxxxxxx > > Cc: daniel@xxxxxxxx; Latvala, Petri <petri.latvala@xxxxxxxxx>; > > Lofstedt, Marta > > <marta.lofstedt@xxxxxxxxx> > > Subject: [PATCH i-g-t v2] tests/kms_plane_multiple: Fix reference > > CRC > > > > kms_plane_multiple wrongly expected that igt lib function would > > modify the > > passed igt_crc_t* object. You should use igt_crc_t** instead. This > > patch fixes > > this anomaly in the test. > > > > While at it, remove unnecesary struct for test data as we only need > > reference CRC here. > > > > The problem was caught by CI system and at least affects on HSW > > platform. > > > > V2: Don't change function that collects CRC for reference CRC > > Fix CRC pointers > > Remove unnecessary struct for holding test data > > > > Signed-off-by: Mika Kahola <mika.kahola@xxxxxxxxx> > > --- > > tests/kms_plane_multiple.c | 25 +++++++++---------------- > > 1 file changed, 9 insertions(+), 16 deletions(-) > > > > diff --git a/tests/kms_plane_multiple.c > > b/tests/kms_plane_multiple.c index > > f6c6223..4bc26b7 100644 > > --- a/tests/kms_plane_multiple.c > > +++ b/tests/kms_plane_multiple.c > > @@ -51,11 +51,6 @@ typedef struct { > > struct igt_fb *fb; > > } data_t; > > > > -typedef struct { > > - data_t *data; > > - igt_crc_t reference_crc; > > -} test_position_t; > > - > > /* Command line parameters. */ > > struct { > > int iterations; > > @@ -106,7 +101,7 @@ static void test_fini(data_t *data, > > igt_output_t > > *output, int n_planes) > > > > static void > > test_grab_crc(data_t *data, igt_output_t *output, enum pipe pipe, > > bool > > atomic, > > - color_t *color, uint64_t tiling, igt_crc_t *crc /* > > out */) > > + color_t *color, uint64_t tiling, igt_crc_t **crc /* > > out */) > > { > > drmModeModeInfo *mode; > > igt_plane_t *primary; > > @@ -132,7 +127,7 @@ test_grab_crc(data_t *data, igt_output_t > > *output, > > enum pipe pipe, bool atomic, > > igt_skip_on(ret != 0); > > > > igt_pipe_crc_start(data->pipe_crc); > > - n = igt_pipe_crc_get_crcs(data->pipe_crc, 1, &crc); > > + n = igt_pipe_crc_get_crcs(data->pipe_crc, 1, crc); > > igt_assert_eq(n, 1); > > } > > > > @@ -251,8 +246,8 @@ test_atomic_plane_position_with_output(data_t > > *data, enum pipe pipe, { > > char buf[256]; > > struct drm_event *e = (void *)buf; > > - test_position_t test = { .data = data }; > > color_t blue = { 0.0f, 0.0f, 1.0f }; > > + igt_crc_t *ref = NULL; > > igt_crc_t *crc = NULL; > > unsigned int vblank_start, vblank_stop; > > int i, n, ret; > > @@ -275,8 +270,7 @@ test_atomic_plane_position_with_output(data_t > > *data, enum pipe pipe, > > > > test_init(data, pipe, n_planes); > > > > - test_grab_crc(data, output, pipe, true, &blue, tiling, > > - &test.reference_crc); > > + test_grab_crc(data, output, pipe, true, &blue, tiling, > > &ref); > > > > i = 0; > > while (i < iterations || loop_forever) { @@ -303,7 +297,7 > > @@ > > test_atomic_plane_position_with_output(data_t *data, enum pipe > > pipe, > > igt_assert(vblank_stop - vblank_start <= > > MAX_CRCS); > > igt_assert_eq(n, vblank_stop - vblank_start); > > > > - igt_assert_crc_equal(&test.reference_crc, crc); > > + igt_assert_crc_equal(ref, crc); > > > > i++; > > } > > @@ -318,9 +312,9 @@ test_legacy_plane_position_with_output(data_t > > *data, enum pipe pipe, > > igt_output_t > > *output, int n_planes, > > uint64_t tiling) > > { > > - test_position_t test = { .data = data }; > > color_t blue = { 0.0f, 0.0f, 1.0f }; > > - igt_crc_t *crc; > > + igt_crc_t *ref = NULL; > > + igt_crc_t *crc = NULL; > > int i, n; > > int iterations = opt.iterations < 1 ? 1 : opt.iterations; > > bool loop_forever; > > @@ -341,8 +335,7 @@ test_legacy_plane_position_with_output(data_t > > *data, enum pipe pipe, > > > > test_init(data, pipe, n_planes); > > > > - test_grab_crc(data, output, pipe, false, &blue, tiling, > > - &test.reference_crc); > > + test_grab_crc(data, output, pipe, false, &blue, tiling, > > &ref); > > > > i = 0; > > while (i < iterations || loop_forever) { @@ -354,7 +347,7 > > @@ > > test_legacy_plane_position_with_output(data_t *data, enum pipe > > pipe, > > > > igt_assert_eq(n, MAX_CRCS); > > > > - igt_assert_crc_equal(&test.reference_crc, crc); > > + igt_assert_crc_equal(ref, crc); > > > > i++; > > } > > -- > > 2.7.4 _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx