* [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; 10+ 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] 10+ messages in thread
* [igt-dev] [PATCH i-g-t 2/2] tests/kms_plane: Use just one valid output
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 ` 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
` (3 subsequent siblings)
4 siblings, 1 reply; 10+ messages in thread
From: Arkadiusz Hiler @ 2019-03-14 11:03 UTC (permalink / raw
To: igt-dev; +Cc: Martin Peres
Since those are just pipe CRC tests output does not really matter.
Instead of running the test number-of-connected-outputs times per pipe,
let's run them just once.
Cc: Martin Peres <martin.peres@free.fr>
Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
---
tests/kms_plane.c | 78 +++++++++++++++++++----------------------------
1 file changed, 32 insertions(+), 46 deletions(-)
diff --git a/tests/kms_plane.c b/tests/kms_plane.c
index 4c0199fa..d037098f 100644
--- a/tests/kms_plane.c
+++ b/tests/kms_plane.c
@@ -219,28 +219,23 @@ test_plane_position_with_output(data_t *data,
static void
test_plane_position(data_t *data, enum pipe pipe, unsigned int flags)
{
+ int n_planes = data->display.pipes[pipe].n_planes;
igt_output_t *output;
- int connected_outs = 0;
+ igt_crc_t reference_crc;
- for_each_valid_output_on_pipe(&data->display, pipe, output) {
- int n_planes = data->display.pipes[pipe].n_planes;
- igt_crc_t reference_crc;
+ output = igt_get_single_output_for_pipe(&data->display, pipe);
+ igt_require(output);
- test_init(data, pipe);
+ test_init(data, pipe);
- test_grab_crc(data, output, pipe, &green, &reference_crc);
+ test_grab_crc(data, output, pipe, &green, &reference_crc);
- for (int plane = 1; plane < n_planes; plane++)
- test_plane_position_with_output(data, pipe, plane,
- output, &reference_crc,
- flags);
+ for (int plane = 1; plane < n_planes; plane++)
+ test_plane_position_with_output(data, pipe, plane,
+ output, &reference_crc,
+ flags);
- test_fini(data);
-
- connected_outs++;
- }
-
- igt_skip_on(connected_outs == 0);
+ test_fini(data);
}
/*
@@ -340,31 +335,24 @@ test_plane_panning_with_output(data_t *data,
static void
test_plane_panning(data_t *data, enum pipe pipe, unsigned int flags)
{
+ int n_planes = data->display.pipes[pipe].n_planes;
igt_output_t *output;
- int connected_outs = 0;
+ igt_crc_t red_crc;
+ igt_crc_t blue_crc;
- for_each_valid_output_on_pipe(&data->display, pipe, output) {
- int n_planes = data->display.pipes[pipe].n_planes;
- igt_crc_t red_crc;
- igt_crc_t blue_crc;
+ output = igt_get_single_output_for_pipe(&data->display, pipe);
+ igt_require(output);
- test_init(data, pipe);
+ test_init(data, pipe);
- test_grab_crc(data, output, pipe, &red, &red_crc);
- test_grab_crc(data, output, pipe, &blue, &blue_crc);
+ test_grab_crc(data, output, pipe, &red, &red_crc);
+ test_grab_crc(data, output, pipe, &blue, &blue_crc);
- for (int plane = 1; plane < n_planes; plane++)
- test_plane_panning_with_output(data, pipe, plane,
- output,
- &red_crc, &blue_crc,
- flags);
+ for (int plane = 1; plane < n_planes; plane++)
+ test_plane_panning_with_output(data, pipe, plane, output,
+ &red_crc, &blue_crc, flags);
- test_fini(data);
-
- connected_outs++;
- }
-
- igt_skip_on(connected_outs == 0);
+ test_fini(data);
}
static const color_t colors[] = {
@@ -599,22 +587,20 @@ static bool test_format_plane(data_t *data, enum pipe pipe,
static void
test_pixel_formats(data_t *data, enum pipe pipe)
{
+ bool result;
igt_output_t *output;
+ igt_plane_t *plane;
- igt_display_require_output_on_pipe(&data->display, pipe);
+ output = igt_get_single_output_for_pipe(&data->display, pipe);
+ igt_require(output);
- for_each_valid_output_on_pipe(&data->display, pipe, output) {
- bool result = true;
- igt_plane_t *plane;
+ result = true;
+ for_each_plane_on_pipe(&data->display, pipe, plane)
+ result &= test_format_plane(data, pipe, output, plane);
- for_each_plane_on_pipe(&data->display, pipe, plane)
- result &= test_format_plane(data, pipe, output, plane);
+ igt_assert_f(result, "At least one CRC mismatch happened\n");
- igt_assert_f(result, "At least one CRC mismatch happened\n");
-
-
- igt_output_set_pipe(output, PIPE_ANY);
- }
+ igt_output_set_pipe(output, PIPE_ANY);
}
static void
--
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] 10+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 2/2] tests/kms_plane: Use just one valid output
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
0 siblings, 0 replies; 10+ messages in thread
From: Maarten Lankhorst @ 2019-03-14 12:19 UTC (permalink / raw
To: Arkadiusz Hiler, igt-dev; +Cc: Martin Peres
Op 14-03-2019 om 12:03 schreef Arkadiusz Hiler:
> Since those are just pipe CRC tests output does not really matter.
>
> Instead of running the test number-of-connected-outputs times per pipe,
> let's run them just once.
>
> Cc: Martin Peres <martin.peres@free.fr>
> Cc: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> Signed-off-by: Arkadiusz Hiler <arkadiusz.hiler@intel.com>
Reviewed-by: Maarten Lankhorst <maarten.lankhorst@linux.intel.com>
> tests/kms_plane.c | 78 +++++++++++++++++++----------------------------
> 1 file changed, 32 insertions(+), 46 deletions(-)
>
> diff --git a/tests/kms_plane.c b/tests/kms_plane.c
> index 4c0199fa..d037098f 100644
> --- a/tests/kms_plane.c
> +++ b/tests/kms_plane.c
> @@ -219,28 +219,23 @@ test_plane_position_with_output(data_t *data,
> static void
> test_plane_position(data_t *data, enum pipe pipe, unsigned int flags)
> {
> + int n_planes = data->display.pipes[pipe].n_planes;
> igt_output_t *output;
> - int connected_outs = 0;
> + igt_crc_t reference_crc;
>
> - for_each_valid_output_on_pipe(&data->display, pipe, output) {
> - int n_planes = data->display.pipes[pipe].n_planes;
> - igt_crc_t reference_crc;
> + output = igt_get_single_output_for_pipe(&data->display, pipe);
> + igt_require(output);
>
> - test_init(data, pipe);
> + test_init(data, pipe);
>
> - test_grab_crc(data, output, pipe, &green, &reference_crc);
> + test_grab_crc(data, output, pipe, &green, &reference_crc);
>
> - for (int plane = 1; plane < n_planes; plane++)
> - test_plane_position_with_output(data, pipe, plane,
> - output, &reference_crc,
> - flags);
> + for (int plane = 1; plane < n_planes; plane++)
> + test_plane_position_with_output(data, pipe, plane,
> + output, &reference_crc,
> + flags);
>
> - test_fini(data);
> -
> - connected_outs++;
> - }
> -
> - igt_skip_on(connected_outs == 0);
> + test_fini(data);
> }
>
> /*
> @@ -340,31 +335,24 @@ test_plane_panning_with_output(data_t *data,
> static void
> test_plane_panning(data_t *data, enum pipe pipe, unsigned int flags)
> {
> + int n_planes = data->display.pipes[pipe].n_planes;
> igt_output_t *output;
> - int connected_outs = 0;
> + igt_crc_t red_crc;
> + igt_crc_t blue_crc;
>
> - for_each_valid_output_on_pipe(&data->display, pipe, output) {
> - int n_planes = data->display.pipes[pipe].n_planes;
> - igt_crc_t red_crc;
> - igt_crc_t blue_crc;
> + output = igt_get_single_output_for_pipe(&data->display, pipe);
> + igt_require(output);
>
> - test_init(data, pipe);
> + test_init(data, pipe);
>
> - test_grab_crc(data, output, pipe, &red, &red_crc);
> - test_grab_crc(data, output, pipe, &blue, &blue_crc);
> + test_grab_crc(data, output, pipe, &red, &red_crc);
> + test_grab_crc(data, output, pipe, &blue, &blue_crc);
>
> - for (int plane = 1; plane < n_planes; plane++)
> - test_plane_panning_with_output(data, pipe, plane,
> - output,
> - &red_crc, &blue_crc,
> - flags);
> + for (int plane = 1; plane < n_planes; plane++)
> + test_plane_panning_with_output(data, pipe, plane, output,
> + &red_crc, &blue_crc, flags);
>
> - test_fini(data);
> -
> - connected_outs++;
> - }
> -
> - igt_skip_on(connected_outs == 0);
> + test_fini(data);
> }
>
> static const color_t colors[] = {
> @@ -599,22 +587,20 @@ static bool test_format_plane(data_t *data, enum pipe pipe,
> static void
> test_pixel_formats(data_t *data, enum pipe pipe)
> {
> + bool result;
> igt_output_t *output;
> + igt_plane_t *plane;
>
> - igt_display_require_output_on_pipe(&data->display, pipe);
> + output = igt_get_single_output_for_pipe(&data->display, pipe);
> + igt_require(output);
>
> - for_each_valid_output_on_pipe(&data->display, pipe, output) {
> - bool result = true;
> - igt_plane_t *plane;
> + result = true;
> + for_each_plane_on_pipe(&data->display, pipe, plane)
> + result &= test_format_plane(data, pipe, output, plane);
>
> - for_each_plane_on_pipe(&data->display, pipe, plane)
> - result &= test_format_plane(data, pipe, output, plane);
> + igt_assert_f(result, "At least one CRC mismatch happened\n");
>
> - igt_assert_f(result, "At least one CRC mismatch happened\n");
> -
> -
> - igt_output_set_pipe(output, PIPE_ANY);
> - }
> + igt_output_set_pipe(output, PIPE_ANY);
> }
>
> static void
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 10+ messages in thread
* [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/2] tests/kms_plane: Print count of mismatched colors
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:54 ` Patchwork
2019-03-14 13:07 ` [igt-dev] [PATCH i-g-t 1/2] " Martin Peres
` (2 subsequent siblings)
4 siblings, 0 replies; 10+ messages in thread
From: Patchwork @ 2019-03-14 12:54 UTC (permalink / raw
To: Arkadiusz Hiler; +Cc: igt-dev
== Series Details ==
Series: series starting with [i-g-t,1/2] tests/kms_plane: Print count of mismatched colors
URL : https://patchwork.freedesktop.org/series/57995/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_5744 -> IGTPW_2620
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://patchwork.freedesktop.org/api/1.0/series/57995/revisions/1/mbox/
Known issues
------------
Here are the changes found in IGTPW_2620 that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@amdgpu/amd_basic@query-info:
- fi-bsw-kefka: NOTRUN -> SKIP [fdo#109271] +55
* igt@amdgpu/amd_cs_nop@sync-gfx0:
- fi-kbl-7567u: NOTRUN -> SKIP [fdo#109271] +17
* igt@gem_exec_basic@gtt-bsd:
- fi-bwr-2160: NOTRUN -> SKIP [fdo#109271] +103
* igt@gem_exec_basic@gtt-bsd2:
- fi-byt-clapper: NOTRUN -> SKIP [fdo#109271] +57
* igt@kms_busy@basic-flip-c:
- fi-bwr-2160: NOTRUN -> SKIP [fdo#109271] / [fdo#109278]
- fi-bsw-kefka: NOTRUN -> SKIP [fdo#109271] / [fdo#109278]
- fi-blb-e6850: NOTRUN -> SKIP [fdo#109271] / [fdo#109278]
- fi-byt-n2820: NOTRUN -> SKIP [fdo#109271] / [fdo#109278]
- fi-byt-clapper: NOTRUN -> SKIP [fdo#109271] / [fdo#109278]
* igt@kms_chamelium@dp-edid-read:
- fi-byt-n2820: NOTRUN -> SKIP [fdo#109271] +56
* igt@kms_chamelium@hdmi-edid-read:
- fi-blb-e6850: NOTRUN -> SKIP [fdo#109271] +48
* igt@kms_frontbuffer_tracking@basic:
- fi-byt-clapper: NOTRUN -> FAIL [fdo#103167]
* igt@kms_pipe_crc_basic@nonblocking-crc-pipe-a-frame-sequence:
- fi-byt-clapper: NOTRUN -> FAIL [fdo#103191] / [fdo#107362] +1
* igt@runner@aborted:
- fi-bxt-dsi: NOTRUN -> FAIL [fdo#109516]
#### Possible fixes ####
* igt@gem_exec_suspend@basic-s4-devices:
- fi-blb-e6850: INCOMPLETE [fdo#107718] -> PASS
* igt@i915_module_load@reload:
- fi-kbl-7567u: DMESG-WARN [fdo#103558] / [fdo#105602] -> PASS
* igt@i915_module_load@reload-with-fault-injection:
- fi-kbl-7567u: DMESG-WARN [fdo#105602] -> PASS
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
[fdo#103191]: https://bugs.freedesktop.org/show_bug.cgi?id=103191
[fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
[fdo#103558]: https://bugs.freedesktop.org/show_bug.cgi?id=103558
[fdo#105602]: https://bugs.freedesktop.org/show_bug.cgi?id=105602
[fdo#107362]: https://bugs.freedesktop.org/show_bug.cgi?id=107362
[fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
[fdo#107718]: https://bugs.freedesktop.org/show_bug.cgi?id=107718
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
[fdo#109516]: https://bugs.freedesktop.org/show_bug.cgi?id=109516
Participating hosts (37 -> 35)
------------------------------
Additional (6): fi-bxt-dsi fi-bwr-2160 fi-bsw-kefka fi-skl-lmem fi-byt-n2820 fi-byt-clapper
Missing (8): fi-ilk-m540 fi-hsw-4200u fi-byt-j1900 fi-byt-squawks fi-snb-2520m fi-kbl-x1275 fi-bxt-j4205 fi-gdg-551
Build changes
-------------
* IGT: IGT_4884 -> IGTPW_2620
CI_DRM_5744: 546ccc809b9469c1f63528692d1fb7c19ddd03c2 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_2620: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2620/
IGT_4884: c46051337b972f8b5a302afb6f603df06fea527d @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2620/
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/2] tests/kms_plane: Print count of mismatched colors
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: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 ` 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
4 siblings, 0 replies; 10+ messages in thread
From: Martin Peres @ 2019-03-14 13:07 UTC (permalink / raw
To: Arkadiusz Hiler, igt-dev
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@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));
> }
>
> +
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@linux.intel.com>
Thanks!
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 10+ messages in thread
* [igt-dev] ✓ Fi.CI.IGT: success for series starting with [i-g-t,1/2] tests/kms_plane: Print count of mismatched colors
2019-03-14 11:03 [igt-dev] [PATCH i-g-t 1/2] tests/kms_plane: Print count of mismatched colors Arkadiusz Hiler
` (2 preceding siblings ...)
2019-03-14 13:07 ` [igt-dev] [PATCH i-g-t 1/2] " Martin Peres
@ 2019-03-14 19:41 ` Patchwork
2019-03-14 22:35 ` [igt-dev] [PATCH i-g-t 1/2] " Dhinakaran Pandiyan
4 siblings, 0 replies; 10+ messages in thread
From: Patchwork @ 2019-03-14 19:41 UTC (permalink / raw
To: Arkadiusz Hiler; +Cc: igt-dev
== Series Details ==
Series: series starting with [i-g-t,1/2] tests/kms_plane: Print count of mismatched colors
URL : https://patchwork.freedesktop.org/series/57995/
State : success
== Summary ==
CI Bug Log - changes from CI_DRM_5744_full -> IGTPW_2620_full
====================================================
Summary
-------
**SUCCESS**
No regressions found.
External URL: https://patchwork.freedesktop.org/api/1.0/series/57995/revisions/1/mbox/
Known issues
------------
Here are the changes found in IGTPW_2620_full that come from known issues:
### IGT changes ###
#### Issues hit ####
* igt@kms_atomic_transition@plane-toggle-modeset-transition:
- shard-apl: PASS -> INCOMPLETE [fdo#103927]
* igt@kms_busy@basic-flip-d:
- shard-kbl: NOTRUN -> SKIP [fdo#109271] / [fdo#109278]
* igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-a:
- shard-apl: NOTRUN -> DMESG-WARN [fdo#107956] +1
- shard-kbl: PASS -> DMESG-WARN [fdo#107956]
* igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-b:
- shard-snb: PASS -> DMESG-WARN [fdo#107956] +1
* igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-c:
- shard-hsw: PASS -> DMESG-WARN [fdo#107956] +1
* igt@kms_busy@extended-modeset-hang-oldfb-with-reset-render-c:
- shard-snb: NOTRUN -> SKIP [fdo#109271] / [fdo#109278] +6
* igt@kms_busy@extended-pageflip-modeset-hang-oldfb-render-a:
- shard-glk: NOTRUN -> DMESG-WARN [fdo#107956]
* igt@kms_ccs@pipe-c-bad-pixel-format:
- shard-glk: NOTRUN -> SKIP [fdo#109271] +37
* igt@kms_color@pipe-a-degamma:
- shard-apl: PASS -> FAIL [fdo#104782] / [fdo#108145]
* igt@kms_color@pipe-c-degamma:
- shard-glk: NOTRUN -> FAIL [fdo#104782]
* igt@kms_cursor_crc@cursor-128x128-suspend:
- shard-apl: PASS -> FAIL [fdo#103191] / [fdo#103232]
- shard-kbl: PASS -> FAIL [fdo#103191] / [fdo#103232]
* igt@kms_cursor_crc@cursor-256x85-onscreen:
- shard-apl: PASS -> FAIL [fdo#103232] +2
- shard-glk: NOTRUN -> FAIL [fdo#103232]
* igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic:
- shard-hsw: PASS -> FAIL [fdo#105767]
* igt@kms_flip@2x-plain-flip-ts-check:
- shard-apl: NOTRUN -> SKIP [fdo#109271] +79
* igt@kms_flip@flip-vs-suspend-interruptible:
- shard-hsw: PASS -> INCOMPLETE [fdo#103540]
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-render:
- shard-apl: PASS -> FAIL [fdo#103167] +1
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-mmap-cpu:
- shard-glk: PASS -> FAIL [fdo#103167] +7
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-mmap-wc:
- shard-snb: NOTRUN -> SKIP [fdo#109271] +71
* igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-pwrite:
- shard-kbl: NOTRUN -> SKIP [fdo#109271] +21
* igt@kms_pipe_crc_basic@nonblocking-crc-pipe-d:
- shard-apl: NOTRUN -> SKIP [fdo#109271] / [fdo#109278] +5
* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-d:
- shard-glk: NOTRUN -> SKIP [fdo#109271] / [fdo#109278] +2
* igt@kms_plane@plane-panning-bottom-right-suspend-pipe-b-planes:
- shard-snb: NOTRUN -> FAIL [fdo#103375]
* igt@kms_plane_alpha_blend@pipe-a-alpha-7efc:
- shard-kbl: NOTRUN -> FAIL [fdo#108145] / [fdo#108590]
* igt@kms_plane_alpha_blend@pipe-a-alpha-opaque-fb:
- shard-apl: PASS -> FAIL [fdo#108145]
- shard-glk: PASS -> FAIL [fdo#108145]
- shard-kbl: PASS -> FAIL [fdo#108145]
* igt@kms_setmode@basic:
- shard-apl: NOTRUN -> FAIL [fdo#99912]
- shard-glk: NOTRUN -> FAIL [fdo#99912]
* igt@kms_vblank@pipe-a-ts-continuation-modeset-hang:
- shard-kbl: PASS -> FAIL [fdo#104894]
* igt@kms_vblank@pipe-b-ts-continuation-modeset:
- shard-apl: PASS -> FAIL [fdo#104894] +1
#### Possible fixes ####
* igt@gem_exec_reuse@single:
- shard-apl: INCOMPLETE [fdo#103927] -> PASS
* igt@i915_pm_rc6_residency@rc6-accuracy:
- shard-snb: SKIP [fdo#109271] -> PASS
* igt@kms_atomic_transition@1x-modeset-transitions-nonblocking-fencing:
- shard-apl: FAIL [fdo#109660] -> PASS
- shard-kbl: FAIL [fdo#109660] -> PASS
* igt@kms_busy@extended-modeset-hang-newfb-render-c:
- shard-hsw: DMESG-WARN [fdo#107956] -> PASS
- shard-kbl: DMESG-WARN [fdo#107956] -> PASS
* igt@kms_color@pipe-b-legacy-gamma:
- shard-glk: FAIL [fdo#104782] -> PASS
- shard-apl: FAIL [fdo#104782] -> PASS
- shard-kbl: FAIL [fdo#104782] -> PASS
* igt@kms_cursor_crc@cursor-128x128-random:
- shard-apl: FAIL [fdo#103232] -> PASS +3
* igt@kms_cursor_crc@cursor-64x64-sliding:
- shard-kbl: FAIL [fdo#103232] -> PASS
* igt@kms_cursor_crc@cursor-64x64-suspend:
- shard-apl: FAIL [fdo#103191] / [fdo#103232] -> PASS
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt:
- shard-apl: FAIL [fdo#103167] -> PASS +2
* igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-move:
- shard-kbl: FAIL [fdo#103167] -> PASS +1
* igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-onoff:
- shard-glk: FAIL [fdo#103167] -> PASS +2
* {igt@kms_plane@plane-position-covered-pipe-c-planes}:
- shard-apl: FAIL [fdo#110038] -> PASS
* {igt@kms_plane_multiple@atomic-pipe-b-tiling-x}:
- shard-apl: FAIL [fdo#110037] -> PASS +3
* {igt@kms_plane_multiple@atomic-pipe-b-tiling-yf}:
- shard-kbl: FAIL [fdo#110037] -> PASS +2
* igt@kms_plane_scaling@pipe-a-scaler-with-clipping-clamping:
- shard-glk: SKIP [fdo#109271] / [fdo#109278] -> PASS +1
* igt@kms_setmode@basic:
- shard-kbl: FAIL [fdo#99912] -> PASS
* {igt@kms_universal_plane@universal-plane-pipe-c-functional}:
- shard-glk: FAIL [fdo#110037] -> PASS +3
#### Warnings ####
* igt@kms_plane_scaling@pipe-a-scaler-with-rotation:
- shard-glk: FAIL [fdo#110098] -> SKIP [fdo#109271] / [fdo#109278]
{name}: This element is suppressed. This means it is ignored when computing
the status of the difference (SUCCESS, WARNING, or FAILURE).
[fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
[fdo#103191]: https://bugs.freedesktop.org/show_bug.cgi?id=103191
[fdo#103232]: https://bugs.freedesktop.org/show_bug.cgi?id=103232
[fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
[fdo#103540]: https://bugs.freedesktop.org/show_bug.cgi?id=103540
[fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
[fdo#104782]: https://bugs.freedesktop.org/show_bug.cgi?id=104782
[fdo#104894]: https://bugs.freedesktop.org/show_bug.cgi?id=104894
[fdo#105767]: https://bugs.freedesktop.org/show_bug.cgi?id=105767
[fdo#107956]: https://bugs.freedesktop.org/show_bug.cgi?id=107956
[fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
[fdo#108590]: https://bugs.freedesktop.org/show_bug.cgi?id=108590
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
[fdo#109660]: https://bugs.freedesktop.org/show_bug.cgi?id=109660
[fdo#110037]: https://bugs.freedesktop.org/show_bug.cgi?id=110037
[fdo#110038]: https://bugs.freedesktop.org/show_bug.cgi?id=110038
[fdo#110098]: https://bugs.freedesktop.org/show_bug.cgi?id=110098
[fdo#99912]: https://bugs.freedesktop.org/show_bug.cgi?id=99912
Participating hosts (10 -> 5)
------------------------------
Missing (5): shard-skl pig-hsw-4770r pig-glk-j5005 shard-iclb pig-skl-6260u
Build changes
-------------
* IGT: IGT_4884 -> IGTPW_2620
* Piglit: piglit_4509 -> None
CI_DRM_5744: 546ccc809b9469c1f63528692d1fb7c19ddd03c2 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_2620: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2620/
IGT_4884: c46051337b972f8b5a302afb6f603df06fea527d @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit
== Logs ==
For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_2620/
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/2] tests/kms_plane: Print count of mismatched colors
2019-03-14 11:03 [igt-dev] [PATCH i-g-t 1/2] tests/kms_plane: Print count of mismatched colors Arkadiusz Hiler
` (3 preceding siblings ...)
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 ` Dhinakaran Pandiyan
2019-03-15 11:56 ` Martin Peres
4 siblings, 1 reply; 10+ messages in thread
From: Dhinakaran Pandiyan @ 2019-03-14 22:35 UTC (permalink / raw
To: Arkadiusz Hiler, igt-dev; +Cc: Martin Peres
On Thu, 2019-03-14 at 13:03 +0200, 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:
IMO it's better to have all the information in the logs, particularly
for those 'weirder and rare cases, which are hard to reproduce. And
don't see how count is useful. I think, we should be even logging the
RGB values for the mismatching cases.
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/2] tests/kms_plane: Print count of mismatched colors
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
0 siblings, 1 reply; 10+ messages in thread
From: Martin Peres @ 2019-03-15 11:56 UTC (permalink / raw
To: dhinakaran.pandiyan, Arkadiusz Hiler, igt-dev; +Cc: Martin Peres
On 15/03/2019 00:35, Dhinakaran Pandiyan wrote:
> On Thu, 2019-03-14 at 13:03 +0200, 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:
> IMO it's better to have all the information in the logs, particularly
> for those 'weirder and rare cases, which are hard to reproduce. And
> don't see how count is useful. I think, we should be even logging the
> RGB values for the mismatching cases.
I definitely stand behind your reasoning here, however I have a strong
requirement that I need to be able to file filters for this, and
multiple lines are just too hard to file filters when you also need to
check that other formats are also failing and no new one comes in
without me to get new values.
Would you have an idea on how to get the colors failing in one line? I
was initially proposing to just have a bitfield representing the colors
failing in one value, but Arek found it hard to understand.
What do you think?
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/2] tests/kms_plane: Print count of mismatched colors
2019-03-15 11:56 ` Martin Peres
@ 2019-03-15 19:41 ` Dhinakaran Pandiyan
2019-03-18 10:48 ` Petri Latvala
0 siblings, 1 reply; 10+ messages in thread
From: Dhinakaran Pandiyan @ 2019-03-15 19:41 UTC (permalink / raw
To: Martin Peres, Arkadiusz Hiler, igt-dev; +Cc: Martin Peres
On Fri, 2019-03-15 at 13:56 +0200, Martin Peres wrote:
> On 15/03/2019 00:35, Dhinakaran Pandiyan wrote:
> > On Thu, 2019-03-14 at 13:03 +0200, 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:
> >
> > IMO it's better to have all the information in the logs,
> > particularly
> > for those 'weirder and rare cases, which are hard to reproduce. And
> > don't see how count is useful. I think, we should be even logging
> > the
> > RGB values for the mismatching cases.
>
> I definitely stand behind your reasoning here, however I have a
> strong
> requirement that I need to be able to file filters for this, and
> multiple lines are just too hard to file filters when you also need
> to
> check that other formats are also failing and no new one comes in
> without me to get new values.
It would have been nice to include this justification in the commit
message.
>
> Would you have an idea on how to get the colors failing in one line?
> I
> was initially proposing to just have a bitfield representing the
> colors
> failing in one value, but Arek found it hard to understand.
>
> What do you think?
A bit mask, like what Petri has done, is still useful to quickly
identify failing patterns; we can always go back and check the color
during debug.
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [igt-dev] [PATCH i-g-t 1/2] tests/kms_plane: Print count of mismatched colors
2019-03-15 19:41 ` Dhinakaran Pandiyan
@ 2019-03-18 10:48 ` Petri Latvala
0 siblings, 0 replies; 10+ messages in thread
From: Petri Latvala @ 2019-03-18 10:48 UTC (permalink / raw
To: Dhinakaran Pandiyan; +Cc: igt-dev, Martin Peres
On Fri, Mar 15, 2019 at 12:41:35PM -0700, Dhinakaran Pandiyan wrote:
> On Fri, 2019-03-15 at 13:56 +0200, Martin Peres wrote:
> > On 15/03/2019 00:35, Dhinakaran Pandiyan wrote:
> > > On Thu, 2019-03-14 at 13:03 +0200, 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:
> > >
> > > IMO it's better to have all the information in the logs,
> > > particularly
> > > for those 'weirder and rare cases, which are hard to reproduce. And
> > > don't see how count is useful. I think, we should be even logging
> > > the
> > > RGB values for the mismatching cases.
> >
> > I definitely stand behind your reasoning here, however I have a
> > strong
> > requirement that I need to be able to file filters for this, and
> > multiple lines are just too hard to file filters when you also need
> > to
> > check that other formats are also failing and no new one comes in
> > without me to get new values.
> It would have been nice to include this justification in the commit
> message.
>
> >
> > Would you have an idea on how to get the colors failing in one line?
> > I
> > was initially proposing to just have a bitfield representing the
> > colors
> > failing in one value, but Arek found it hard to understand.
> >
> > What do you think?
> A bit mask, like what Petri has done, is still useful to quickly
> identify failing patterns; we can always go back and check the color
> during debug.
Can I interpret this as an acked-by on the mask printing version?
--
Petri Latvala
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2019-03-18 10:48 UTC | newest]
Thread overview: 10+ 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
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.