[igt-dev] [PATCH i-g-t 1/2] tests/kms_plane: Print count of mismatched colors
Martin Peres
martin.peres at free.fr
Thu Mar 14 13:07:27 UTC 2019
On 14/03/2019 13:03, Arkadiusz Hiler wrote:
> Currently we are printing one igt_warn for each CRC mismatch, which gets
> quite overwhelming with having to see the same error 8 times for each
> color tested:
>
> WARNING: CRC mismatch with format NV12 (0x3231564e) on A.3
> WARNING: CRC mismatch with format NV12 (0x3231564e) on A.3
> WARNING: CRC mismatch with format NV12 (0x3231564e) on A.3
> WARNING: CRC mismatch with format NV12 (0x3231564e) on A.3
> WARNING: CRC mismatch with format NV12 (0x3231564e) on A.3
> WARNING: CRC mismatch with format NV12 (0x3231564e) on A.3
> WARNING: CRC mismatch with format NV12 (0x3231564e) on A.3
> WARNING: CRC mismatch with format NV12 (0x3231564e) on A.3
>
> Since the most interesting information here is which format on which
> pipe/plane is broken we can skip igt_warn just once.
>
> For those weirder and rarer case where just certain colors would fail we
> still provide the count:
>
> WARNING: CRC mismatch with format NV12 (0x3231564e) on A.3 with 8/8 solid colors tested
>
> Cc: Martin Peres <martin.peres at free.fr>
> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler at intel.com>
> ---
> tests/kms_plane.c | 20 +++++++++++---------
> 1 file changed, 11 insertions(+), 9 deletions(-)
>
> diff --git a/tests/kms_plane.c b/tests/kms_plane.c
> index 9c330ae4..4c0199fa 100644
> --- a/tests/kms_plane.c
> +++ b/tests/kms_plane.c
> @@ -547,6 +547,7 @@ static bool test_format_plane(data_t *data, enum pipe pipe,
> }
>
> for (int i = 0; i < plane->drm_plane->count_formats; i++) {
> + int crc_mismatch_count = 0;
> igt_crc_t crc;
>
> format = plane->drm_plane->formats[i];
> @@ -562,23 +563,24 @@ static bool test_format_plane(data_t *data, enum pipe pipe,
> kmstest_pipe_name(pipe), plane->index);
>
> for (int j = 0; j < ARRAY_SIZE(colors); j++) {
> - bool crc_equal;
> -
> test_format_plane_color(data, pipe, plane,
> format, width, height,
> dst_w, dst_h,
> j, &crc, &fb);
>
> - crc_equal = igt_check_crc_equal(&crc, &ref_crc[j]);
> - result &= crc_equal;
> -
> - if (!crc_equal)
> - igt_warn("CRC mismatch with format " IGT_FORMAT_FMT " on %s.%u\n",
> - IGT_FORMAT_ARGS(format),
> - kmstest_pipe_name(pipe), plane->index);
> + if (!igt_check_crc_equal(&crc, &ref_crc[j])) {
> + crc_mismatch_count++;
> + result = false;
> + }
> }
> +
> + if (crc_mismatch_count)
> + igt_warn("CRC mismatch with format " IGT_FORMAT_FMT " on %s.%u with %d/%d solid colors tested\n",
> + IGT_FORMAT_ARGS(format), kmstest_pipe_name(pipe),
> + plane->index, crc_mismatch_count, (int)ARRAY_SIZE(colors));
> }
>
> +
Was this meant?
> igt_pipe_crc_stop(data->pipe_crc);
> test_fini(data);
>
>
In any case, this patch is:
Reviewed-by: Martin Peres <martin.peres at linux.intel.com>
Thanks!
More information about the igt-dev
mailing list