public inbox for igt-dev@lists.freedesktop.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t 1/2] tests/kms_plane: Print count of mismatched colors
@ 2019-03-14 11:03 Arkadiusz Hiler
  2019-03-14 11:03 ` [igt-dev] [PATCH i-g-t 2/2] tests/kms_plane: Use just one valid output Arkadiusz Hiler
                   ` (4 more replies)
  0 siblings, 5 replies; 12+ messages in thread
From: Arkadiusz Hiler @ 2019-03-14 11:03 UTC (permalink / raw)
  To: igt-dev; +Cc: Martin Peres

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@free.fr>
Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@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));
 	}
 
+
 	igt_pipe_crc_stop(data->pipe_crc);
 	test_fini(data);
 
-- 
2.20.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

^ permalink raw reply related	[flat|nested] 12+ messages in thread
* [igt-dev] [PATCH i-g-t 1/2] tests/kms_plane: Print count of mismatched colors
@ 2019-03-15 12:53 Petri Latvala
  2019-03-19  3:26 ` Dhinakaran Pandiyan
  0 siblings, 1 reply; 12+ messages in thread
From: Petri Latvala @ 2019-03-15 12:53 UTC (permalink / raw)
  To: igt-dev; +Cc: Petri Latvala, Dhinakaran Pandiyan

From: Arkadiusz Hiler <arkadiusz.hiler@intel.com>

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 and the mask of color array indices that failed:

WARNING: CRC mismatches with format NV12 (0x3231564e) on A.3 with 8/8 solid colors tested (0xFF)

v2 (Petri): Print a mask so it's possible to know which colors failed.

Cc: Martin Peres <martin.peres@linux.intel.com>
Cc: Dhinakaran Pandiyan <dhinakaran.pandiyan@intel.com>
Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
Reviewed-by: Martin Peres <martin.peres@linux.intel.com> #v1
Signed-off-by: Petri Latvala <petri.latvala@intel.com>
---
 tests/kms_plane.c | 21 ++++++++++++---------
 1 file changed, 12 insertions(+), 9 deletions(-)

diff --git a/tests/kms_plane.c b/tests/kms_plane.c
index 969a61c8..82d4d1d0 100644
--- a/tests/kms_plane.c
+++ b/tests/kms_plane.c
@@ -547,6 +547,8 @@ 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;
+		int crc_mismatch_mask = 0;
 		igt_crc_t crc;
 
 		format = plane->drm_plane->formats[i];
@@ -562,21 +564,22 @@ 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++;
+				crc_mismatch_mask |= (1 << j);
+				result = false;
+			}
 		}
+
+		if (crc_mismatch_count)
+			igt_warn("CRC mismatches with format " IGT_FORMAT_FMT " on %s.%u with %d/%d solid colors tested (0x%X)\n",
+				 IGT_FORMAT_ARGS(format), kmstest_pipe_name(pipe),
+				 plane->index, crc_mismatch_count, (int)ARRAY_SIZE(colors), crc_mismatch_mask);
 	}
 
 	igt_pipe_crc_stop(data->pipe_crc);
-- 
2.19.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

^ permalink raw reply related	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2019-03-19  3:26 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-03-14 11:03 [igt-dev] [PATCH i-g-t 1/2] tests/kms_plane: Print count of mismatched colors Arkadiusz Hiler
2019-03-14 11:03 ` [igt-dev] [PATCH i-g-t 2/2] tests/kms_plane: Use just one valid output Arkadiusz Hiler
2019-03-14 12:19   ` Maarten Lankhorst
2019-03-14 12:54 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/2] tests/kms_plane: Print count of mismatched colors Patchwork
2019-03-14 13:07 ` [igt-dev] [PATCH i-g-t 1/2] " Martin Peres
2019-03-14 19:41 ` [igt-dev] ✓ Fi.CI.IGT: success for series starting with [i-g-t,1/2] " Patchwork
2019-03-14 22:35 ` [igt-dev] [PATCH i-g-t 1/2] " Dhinakaran Pandiyan
2019-03-15 11:56   ` Martin Peres
2019-03-15 19:41     ` Dhinakaran Pandiyan
2019-03-18 10:48       ` Petri Latvala
  -- strict thread matches above, loose matches on Subject: below --
2019-03-15 12:53 Petri Latvala
2019-03-19  3:26 ` Dhinakaran Pandiyan

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox