Skip to contentSkip to conversation

tests/kms_chamelium: add a latency test

PATCH In review Simon Ser 2 participants 4 messages Sep 6, 2019

lore
Share & tools
lore

Simon Ser

author
#0 lore raw

PATCH 1/1 tests/kms_chamelium: add a latency test

This new test creates a red and a green framebuffer, then alternatively shows one and the other for a while. We check that we correctly capture the alternating pattern with Chamelium.

We do our best to capture the pattern, which is tricky because of synchronization issues. We first show the red FB, start the capture, then play the alternating pattern, and stop the capture. We capture more frames than there are in the pattern to make sure the delay after starting the capture doesn't make us completely miss the pattern.

Cc Chris Wilson <[email protected]>
Cc Martin Peres <[email protected]>
---
 tests/kms_chamelium.c | 163 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 163 insertions(+)
tests/kms_chamelium.c +163 -0
index 6b6292497cd7..ba9f8acb600c 100644
@@ -2522,6 +2522,161 @@ test_hpd_storm_disable(data_t *data, struct chamelium_port *port, int width)
 	igt_hpd_storm_reset(data->drm_fd);
 }
 
+static void latency_page_flip_handler(int fd, unsigned seq, unsigned tv_sec,
+				      unsigned tv_usec, void *data)
+{
+	int64_t *seq_ptr = data;
+
+	igt_debug("Got page-flip event (seq=%u)\n", seq);
+	*seq_ptr = seq;
+}
+
+#define TEST_LATENCY_PLAYBACK_FRAMES 20
+#define TEST_LATENCY_CAPTURE_FRAMES (TEST_LATENCY_PLAYBACK_FRAMES + 10)
+
+static const char test_display_latency_desc[] =
+	"Alternate between two different buffers at each page-flip, "
+	"check there is no latency or tearing";
+static void
+test_display_latency(data_t *data, struct chamelium_port *port)
+{
+	igt_output_t *output;
+	igt_plane_t *primary;
+	struct igt_fb fbs[2];
+	unsigned int fb_ids[2];
+	struct chamelium_fb_crc_async_data *fb_crcs[2];
+	drmModeModeInfo mode;
+	drmModeConnector *connector;
+	struct pollfd pfd = {0};
+	drmEventContext drm_event = {0};
+	int i, j, ret, captured_frames_count, start, end;
+	int64_t prev_seq, seq;
+	igt_crc_t *crcs, *expected_crcs[2];
+
+	reset_state(data, port);
+
+	output = prepare_output(data, port, TEST_EDID_BASE);
+	connector = chamelium_port_get_connector(data->chamelium, port, false);
+	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
+	igt_assert(primary);
+
+	igt_assert(connector->count_modes > 0);
+	mode = connector->modes[0];
+
+	drmModeFreeConnector(connector);
+
+	fb_ids[0] = igt_create_color_pattern_fb(data->drm_fd,
+						mode.hdisplay, mode.vdisplay,
+						DRM_FORMAT_XRGB8888,
+						LOCAL_DRM_FORMAT_MOD_NONE,
+						1, 0, 0, &fbs[0]);
+	igt_assert(fb_ids[0] > 0);
+	fb_ids[1] = igt_create_color_pattern_fb(data->drm_fd,
+						mode.hdisplay, mode.vdisplay,
+						DRM_FORMAT_XRGB8888,
+						LOCAL_DRM_FORMAT_MOD_NONE,
+						0, 1, 0, &fbs[1]);
+	igt_assert(fb_ids[1] > 0);
+
+	fb_crcs[0] = chamelium_calculate_fb_crc_async_start(data->drm_fd,
+							    &fbs[0]);
+	fb_crcs[1] = chamelium_calculate_fb_crc_async_start(data->drm_fd,
+							    &fbs[1]);
+
+	igt_plane_set_fb(primary, &fbs[0]);
+	igt_plane_set_size(primary, mode.hdisplay, mode.vdisplay);
+	igt_output_override_mode(output, &mode);
+	igt_display_commit2(&data->display, COMMIT_ATOMIC);
+
+	chamelium_start_capture(data->chamelium, port, 0, 0, 0, 0);
+
+	pfd.fd = data->drm_fd;
+	pfd.events = POLLIN;
+
+	drm_event.version = 2;
+	drm_event.page_flip_handler = latency_page_flip_handler;
+
+	/* Make sure we stop the alternating pattern with fb[1] */
+	assert(TEST_LATENCY_PLAYBACK_FRAMES % 2 == 0);
+
+	prev_seq = -1;
+	for (i = 0; i < TEST_LATENCY_PLAYBACK_FRAMES; i++) {
+		igt_plane_set_fb(primary, &fbs[i % 2]);
+
+		igt_display_commit_atomic(&data->display,
+					  DRM_MODE_ATOMIC_NONBLOCK |
+					  DRM_MODE_PAGE_FLIP_EVENT,
+					  &seq);
+
+		ret = poll(&pfd, 1, 1000);
+		igt_assert_f(ret == 1, "poll returned %d, expected 1\n", ret);
+		seq = -1;
+		drmHandleEvent(data->drm_fd, &drm_event);
+		igt_assert(seq >= 0);
+
+		if (prev_seq >= 0) {
+			igt_assert((unsigned) (prev_seq + 1) == (unsigned) seq);
+		}
+		prev_seq = seq;
+	}
+
+	/* Capture more frames than necessary, because we don't want to miss
+	 * our alternating pattern. */
+	chamelium_stop_capture(data->chamelium, TEST_LATENCY_CAPTURE_FRAMES);
+	crcs = chamelium_read_captured_crcs(data->chamelium,
+					    &captured_frames_count);
+	igt_assert(captured_frames_count == TEST_LATENCY_CAPTURE_FRAMES);
+
+	igt_debug("Captured %d frames\n", captured_frames_count);
+
+	expected_crcs[0] = chamelium_calculate_fb_crc_async_finish(fb_crcs[0]);
+	expected_crcs[1] = chamelium_calculate_fb_crc_async_finish(fb_crcs[1]);
+
+	/* Assuming reference CRCs A and B, the captured CRCs should look like:
+	 * A A A A A B A B A B A B A B A B A B … A B A B B B B B B B
+	 *           ^                                 ^
+	 *           playback starts                   playback ends
+	 */
+	igt_debug("Reference CRC #0: %s\n", igt_crc_to_string(expected_crcs[0]));
+	igt_debug("Reference CRC #1: %s\n", igt_crc_to_string(expected_crcs[1]));
+	for (i = 0; i < captured_frames_count; i++) {
+		igt_debug("Captured CRC #%d: %s\n", i,
+			  igt_crc_to_string(&crcs[i]));
+	}
+
+	igt_debug("Searching start and end of alternating pattern...\n");
+	for (start = 0; start < captured_frames_count; start++) {
+		if (!igt_check_crc_equal(expected_crcs[0], &crcs[start]))
+			break;
+	}
+	for (end = captured_frames_count - 1; end >= 0; end--) {
+		if (!igt_check_crc_equal(expected_crcs[1], &crcs[end]))
+			break;
+	}
+	igt_debug("Alternating pattern starts at frame #%d and ends at "
+		  "frame #%d\n", start, end);
+	/* Make sure we captured a big enough chunk of the pattern */
+	igt_assert_f(end - start > TEST_LATENCY_PLAYBACK_FRAMES / 2,
+		     "Captured only %d frames of the alternating pattern, "
+		     "that's not enough (expected more than %d)\n",
+		     end - start, TEST_LATENCY_PLAYBACK_FRAMES / 2);
+
+	j = 1; /* crcs[start] should match expected_crcs[1] */
+	for (i = start; i <= end; i++) {
+		igt_assert_f(igt_check_crc_equal(expected_crcs[j % 2], &crcs[i]),
+			     "Captured CRC #%d mismatches reference CRC #%d\n",
+			     i, j % 2);
+		j++;
+	}
+
+	free(expected_crcs[0]);
+	free(expected_crcs[1]);
+	free(crcs);
+
+	igt_remove_fb(data->drm_fd, &fbs[0]);
+	igt_remove_fb(data->drm_fd, &fbs[1]);
+}
+
 static const struct edid *get_edid(enum test_edid edid)
 {
 	switch (edid) {
@@ -2659,6 +2814,10 @@ igt_main
 		connector_subtest("dp-audio-edid", DisplayPort)
 			test_display_audio_edid(&data, port,
 						TEST_EDID_DP_AUDIO);
+
+		igt_describe(test_display_latency_desc);
+		connector_subtest("dp-latency", DisplayPort)
+			test_display_latency(&data, port);
 	}
 
 	igt_subtest_group {
@@ -2820,6 +2979,10 @@ igt_main
 
 		connector_subtest("hdmi-aspect-ratio", HDMIA)
 			test_display_aspect_ratio(&data, port);
+
+		igt_describe(test_display_latency_desc);
+		connector_subtest("hdmi-latency", HDMIA)
+			test_display_latency(&data, port);
 	}
 
 	igt_subtest_group {
Signature · 6 lines
2.23.0

_______________________________________________
igt-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/igt-dev
author
#1 lore raw
Quoted 10 lines · Simon Ser

This new test creates a red and a green framebuffer, then alternatively shows one and the other for a while. We check that we correctly capture the alternating pattern with Chamelium.

We do our best to capture the pattern, which is tricky because of synchronization issues. We first show the red FB, start the capture, then play the alternating pattern, and stop the capture. We capture more frames than there are in the pattern to make sure the delay after starting the capture doesn't make us completely miss the pattern.

Quoted 3 lines
Cc Chris Wilson <[email protected]>
Cc Martin Peres <[email protected]>

TBH this isn't really a latency test, there's no timing measurement. I don't want to do that with the Chamelium, because the local network could be crowded and introduce a lot of extra latency randomly.

Maybe this should be a non-Chamelium test, just with plain old CRCs coming from the GPU directly.

Quoted 182 lines
---
 tests/kms_chamelium.c | 163 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 163 insertions(+)
tests/kms_chamelium.c +159 -0
index 6b6292497cd7..ba9f8acb600c 100644
@@ -2522,6 +2522,161 @@ test_hpd_storm_disable(data_t *data, struct chamelium_port *port, int width)
 	igt_hpd_storm_reset(data->drm_fd);
 }
 
+static void latency_page_flip_handler(int fd, unsigned seq, unsigned tv_sec,
+				      unsigned tv_usec, void *data)
+{
+	int64_t *seq_ptr = data;
+
+	igt_debug("Got page-flip event (seq=%u)\n", seq);
+	*seq_ptr = seq;
+}
+
+#define TEST_LATENCY_PLAYBACK_FRAMES 20
+#define TEST_LATENCY_CAPTURE_FRAMES (TEST_LATENCY_PLAYBACK_FRAMES + 10)
+
+static const char test_display_latency_desc[] =
+	"Alternate between two different buffers at each page-flip, "
+	"check there is no latency or tearing";
+static void
+test_display_latency(data_t *data, struct chamelium_port *port)
+{
+	igt_output_t *output;
+	igt_plane_t *primary;
+	struct igt_fb fbs[2];
+	unsigned int fb_ids[2];
+	struct chamelium_fb_crc_async_data *fb_crcs[2];
+	drmModeModeInfo mode;
+	drmModeConnector *connector;
+	struct pollfd pfd = {0};
+	drmEventContext drm_event = {0};
+	int i, j, ret, captured_frames_count, start, end;
+	int64_t prev_seq, seq;
+	igt_crc_t *crcs, *expected_crcs[2];
+
+	reset_state(data, port);
+
+	output = prepare_output(data, port, TEST_EDID_BASE);
+	connector = chamelium_port_get_connector(data->chamelium, port, false);
+	primary = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
+	igt_assert(primary);
+
+	igt_assert(connector->count_modes > 0);
+	mode = connector->modes[0];
+
+	drmModeFreeConnector(connector);
+
+	fb_ids[0] = igt_create_color_pattern_fb(data->drm_fd,
+						mode.hdisplay, mode.vdisplay,
+						DRM_FORMAT_XRGB8888,
+						LOCAL_DRM_FORMAT_MOD_NONE,
+						1, 0, 0, &fbs[0]);
+	igt_assert(fb_ids[0] > 0);
+	fb_ids[1] = igt_create_color_pattern_fb(data->drm_fd,
+						mode.hdisplay, mode.vdisplay,
+						DRM_FORMAT_XRGB8888,
+						LOCAL_DRM_FORMAT_MOD_NONE,
+						0, 1, 0, &fbs[1]);
+	igt_assert(fb_ids[1] > 0);
+
+	fb_crcs[0] = chamelium_calculate_fb_crc_async_start(data->drm_fd,
+							    &fbs[0]);
+	fb_crcs[1] = chamelium_calculate_fb_crc_async_start(data->drm_fd,
+							    &fbs[1]);
+
+	igt_plane_set_fb(primary, &fbs[0]);
+	igt_plane_set_size(primary, mode.hdisplay, mode.vdisplay);
+	igt_output_override_mode(output, &mode);
+	igt_display_commit2(&data->display, COMMIT_ATOMIC);
+
+	chamelium_start_capture(data->chamelium, port, 0, 0, 0, 0);
+
+	pfd.fd = data->drm_fd;
+	pfd.events = POLLIN;
+
+	drm_event.version = 2;
+	drm_event.page_flip_handler = latency_page_flip_handler;
+
+	/* Make sure we stop the alternating pattern with fb[1] */
+	assert(TEST_LATENCY_PLAYBACK_FRAMES % 2 == 0);
+
+	prev_seq = -1;
+	for (i = 0; i < TEST_LATENCY_PLAYBACK_FRAMES; i++) {
+		igt_plane_set_fb(primary, &fbs[i % 2]);
+
+		igt_display_commit_atomic(&data->display,
+					  DRM_MODE_ATOMIC_NONBLOCK |
+					  DRM_MODE_PAGE_FLIP_EVENT,
+					  &seq);
+
+		ret = poll(&pfd, 1, 1000);
+		igt_assert_f(ret == 1, "poll returned %d, expected 1\n", ret);
+		seq = -1;
+		drmHandleEvent(data->drm_fd, &drm_event);
+		igt_assert(seq >= 0);
+
+		if (prev_seq >= 0) {
+			igt_assert((unsigned) (prev_seq + 1) == (unsigned) seq);
+		}
+		prev_seq = seq;
+	}
+
+	/* Capture more frames than necessary, because we don't want to miss
+	 * our alternating pattern. */
+	chamelium_stop_capture(data->chamelium, TEST_LATENCY_CAPTURE_FRAMES);
+	crcs = chamelium_read_captured_crcs(data->chamelium,
+					    &captured_frames_count);
+	igt_assert(captured_frames_count == TEST_LATENCY_CAPTURE_FRAMES);
+
+	igt_debug("Captured %d frames\n", captured_frames_count);
+
+	expected_crcs[0] = chamelium_calculate_fb_crc_async_finish(fb_crcs[0]);
+	expected_crcs[1] = chamelium_calculate_fb_crc_async_finish(fb_crcs[1]);
+
+	/* Assuming reference CRCs A and B, the captured CRCs should look like:
+	 * A A A A A B A B A B A B A B A B A B … A B A B B B B B B B
+	 *           ^                                 ^
+	 *           playback starts                   playback ends
+	 */
+	igt_debug("Reference CRC #0: %s\n", igt_crc_to_string(expected_crcs[0]));
+	igt_debug("Reference CRC #1: %s\n", igt_crc_to_string(expected_crcs[1]));
+	for (i = 0; i < captured_frames_count; i++) {
+		igt_debug("Captured CRC #%d: %s\n", i,
+			  igt_crc_to_string(&crcs[i]));
+	}
+
+	igt_debug("Searching start and end of alternating pattern...\n");
+	for (start = 0; start < captured_frames_count; start++) {
+		if (!igt_check_crc_equal(expected_crcs[0], &crcs[start]))
+			break;
+	}
+	for (end = captured_frames_count - 1; end >= 0; end--) {
+		if (!igt_check_crc_equal(expected_crcs[1], &crcs[end]))
+			break;
+	}
+	igt_debug("Alternating pattern starts at frame #%d and ends at "
+		  "frame #%d\n", start, end);
+	/* Make sure we captured a big enough chunk of the pattern */
+	igt_assert_f(end - start > TEST_LATENCY_PLAYBACK_FRAMES / 2,
+		     "Captured only %d frames of the alternating pattern, "
+		     "that's not enough (expected more than %d)\n",
+		     end - start, TEST_LATENCY_PLAYBACK_FRAMES / 2);
+
+	j = 1; /* crcs[start] should match expected_crcs[1] */
+	for (i = start; i <= end; i++) {
+		igt_assert_f(igt_check_crc_equal(expected_crcs[j % 2], &crcs[i]),
+			     "Captured CRC #%d mismatches reference CRC #%d\n",
+			     i, j % 2);
+		j++;
+	}
+
+	free(expected_crcs[0]);
+	free(expected_crcs[1]);
+	free(crcs);
+
+	igt_remove_fb(data->drm_fd, &fbs[0]);
+	igt_remove_fb(data->drm_fd, &fbs[1]);
+}
+
 static const struct edid *get_edid(enum test_edid edid)
 {
 	switch (edid) {
@@ -2659,6 +2814,10 @@ igt_main
 		connector_subtest("dp-audio-edid", DisplayPort)
 			test_display_audio_edid(&data, port,
 						TEST_EDID_DP_AUDIO);
+
+		igt_describe(test_display_latency_desc);
+		connector_subtest("dp-latency", DisplayPort)
+			test_display_latency(&data, port);
 	}
 
 	igt_subtest_group {

tests/kms_chamelium.c igt_main · line 2988

Quoted 10 lines
tests/kms_chamelium.c +4 -0
@@ -2820,6 +2979,10 @@ igt_main
 
 		connector_subtest("hdmi-aspect-ratio", HDMIA)
 			test_display_aspect_ratio(&data, port);
+
+		igt_describe(test_display_latency_desc);
+		connector_subtest("hdmi-latency", HDMIA)
+			test_display_latency(&data, port);
 	}
 
 	igt_subtest_group {

_______________________________________________
igt-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/igt-dev

#2 lore raw

[igt-dev] ✓ Fi.CI.BAT: success for tests/kms_chamelium: add a latency test

In reply to Simon Ser
== Series Details ==

== Series Details ==

Series: tests/kms_chamelium: add a latency test
URL : https://patchwork.freedesktop.org/series/66333/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_6841 -> IGTPW_3423
====================================================

Summary
-------

**SUCCESS**

No regressions found.

External URL: https://patchwork.freedesktop.org/api/1.0/series/66333/revisions/1/mbox/

Known issues
------------

Here are the changes found in IGTPW_3423 that come from known issues:

### IGT changes ###

#### Issues hit ####

* igt@kms_frontbuffer_tracking@basic:
- fi-icl-u2: [PASS][1] -> [FAIL][2] ([fdo#103167])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/fi-icl-u2/igt@[email protected]
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/fi-icl-u2/igt@[email protected]

#### Possible fixes ####

* igt@i915_pm_rpm@basic-rte:
- {fi-icl-guc}: [DMESG-WARN][3] -> [PASS][4]
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/fi-icl-guc/igt@[email protected]
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/fi-icl-guc/igt@[email protected]

* igt@i915_selftest@live_execlists:
- fi-skl-gvtdvm: [DMESG-FAIL][5] ([fdo#111108]) -> [PASS][6]
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/fi-skl-gvtdvm/igt@i915_selftest@live_execlists.html
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/fi-skl-gvtdvm/igt@i915_selftest@live_execlists.html

* igt@kms_chamelium@dp-crc-fast:
- fi-cml-u2: [FAIL][7] ([fdo#110627]) -> [PASS][8]
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/fi-cml-u2/igt@[email protected]
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/fi-cml-u2/igt@[email protected]

* igt@kms_chamelium@hdmi-hpd-fast:
- fi-kbl-7500u: [FAIL][9] ([fdo#111407]) -> [PASS][10]
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/fi-kbl-7500u/igt@[email protected]
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/fi-kbl-7500u/igt@[email protected]

* igt@kms_frontbuffer_tracking@basic:
- {fi-icl-u4}: [FAIL][11] ([fdo#103167]) -> [PASS][12]
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/fi-icl-u4/igt@[email protected]
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/fi-icl-u4/igt@[email protected]

* igt@vgem_basic@unload:
- fi-icl-u3: [DMESG-WARN][13] ([fdo#107724]) -> [PASS][14]
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/fi-icl-u3/igt@[email protected]
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/fi-icl-u3/igt@[email protected]

{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#107724]: https://bugs.freedesktop.org/show_bug.cgi?id=107724
[fdo#110627]: https://bugs.freedesktop.org/show_bug.cgi?id=110627
[fdo#111108]: https://bugs.freedesktop.org/show_bug.cgi?id=111108
[fdo#111407]: https://bugs.freedesktop.org/show_bug.cgi?id=111407

Participating hosts (53 -> 45)
------------------------------

Additional (1): fi-tgl-u
Missing (9): fi-ilk-m540 fi-bdw-5557u fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-skl-iommu fi-icl-y fi-byt-clapper fi-bdw-samus

Build changes
-------------

* CI: CI-20190529 -> None
* IGT: IGT_5171 -> IGTPW_3423

CI-20190529: 20190529
CI_DRM_6841: 5c24bcfb9c6036b32dbfdbc22d773473880ff498 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_3423: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/
IGT_5171: 1911564805fe454919e8a5846534a0c1ef376a33 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools

== Testlist changes ==

+igt@kms_chamelium@dp-latency
+igt@kms_chamelium@hdmi-latency

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/
_______________________________________________
igt-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/igt-dev

#3 lore raw

[igt-dev] ✓ Fi.CI.IGT: success for tests/kms_chamelium: add a latency test

In reply to Simon Ser
== Series Details ==

== Series Details ==

Series: tests/kms_chamelium: add a latency test
URL : https://patchwork.freedesktop.org/series/66333/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_6841_full -> IGTPW_3423_full
====================================================

Summary
-------

**SUCCESS**

No regressions found.

External URL: https://patchwork.freedesktop.org/api/1.0/series/66333/revisions/1/mbox/

New tests
---------

New tests have been introduced between CI_DRM_6841_full and IGTPW_3423_full:

### New IGT tests (2) ###

* igt@kms_chamelium@dp-latency:
- Statuses : 6 skip(s)
- Exec time: [0.0] s

* igt@kms_chamelium@hdmi-latency:
- Statuses : 6 skip(s)
- Exec time: [0.0] s

Known issues
------------

Here are the changes found in IGTPW_3423_full that come from known issues:

### IGT changes ###

#### Issues hit ####

* igt@gem_eio@unwedge-stress:
- shard-iclb: [PASS][1] -> [INCOMPLETE][2] ([fdo#107713])
[1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-iclb7/igt@[email protected]
[2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-iclb7/igt@[email protected]

* igt@gem_exec_schedule@preempt-other-bsd1:
- shard-iclb: [PASS][3] -> [SKIP][4] ([fdo#109276]) +17 similar issues
[3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-iclb4/igt@[email protected]
[4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-iclb7/igt@[email protected]

* igt@gem_exec_schedule@promotion-bsd:
- shard-iclb: [PASS][5] -> [SKIP][6] ([fdo#111325]) +4 similar issues
[5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-iclb6/igt@[email protected]
[6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-iclb4/igt@[email protected]

* igt@gem_mocs_settings@mocs-rc6-ctx-render:
- shard-apl: [PASS][7] -> [SKIP][8] ([fdo#109271])
[7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-apl5/igt@[email protected]
[8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-apl8/igt@[email protected]

* igt@gem_workarounds@suspend-resume:
- shard-apl: [PASS][9] -> [DMESG-WARN][10] ([fdo#108566]) +6 similar issues
[9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-apl1/igt@[email protected]
[10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-apl8/igt@[email protected]

* igt@kms_frontbuffer_tracking@fbcpsr-1p-pri-indfb-multidraw:
- shard-iclb: [PASS][11] -> [FAIL][12] ([fdo#103167]) +4 similar issues
[11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-iclb1/igt@[email protected]
[12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-iclb7/igt@[email protected]

* igt@kms_psr@psr2_dpms:
- shard-iclb: [PASS][13] -> [SKIP][14] ([fdo#109441]) +1 similar issue
[13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-iclb2/igt@kms_psr@psr2_dpms.html
[14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-iclb4/igt@kms_psr@psr2_dpms.html

* igt@kms_setmode@basic:
- shard-hsw: [PASS][15] -> [FAIL][16] ([fdo#99912])
[15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-hsw7/igt@[email protected]
[16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-hsw2/igt@[email protected]

* igt@perf_pmu@render-node-busy-rcs0:
- shard-apl: [PASS][17] -> [FAIL][18] ([fdo#111545]) +1 similar issue
[17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-apl3/igt@[email protected]
[18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-apl8/igt@[email protected]

* igt@tools_test@sysfs_l3_parity:
- shard-hsw: [PASS][19] -> [SKIP][20] ([fdo#109271])
[19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-hsw1/igt@tools_test@sysfs_l3_parity.html
[20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-hsw7/igt@tools_test@sysfs_l3_parity.html

#### Possible fixes ####

* igt@gem_ctx_isolation@rcs0-s3:
- shard-apl: [DMESG-WARN][21] ([fdo#108566]) -> [PASS][22] +3 similar issues
[21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-apl7/igt@[email protected]
[22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-apl3/igt@[email protected]

* igt@gem_eio@unwedge-stress:
- shard-snb: [FAIL][23] ([fdo#109661]) -> [PASS][24]
[23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-snb2/igt@[email protected]
[24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-snb6/igt@[email protected]

* igt@gem_exec_schedule@pi-ringfull-blt:
- shard-apl: [FAIL][25] ([fdo#111547]) -> [PASS][26]
[25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-apl3/igt@[email protected]
[26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-apl5/igt@[email protected]

* igt@gem_exec_schedule@pi-ringfull-bsd:
- shard-iclb: [SKIP][27] ([fdo#111325]) -> [PASS][28] +5 similar issues
[27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-iclb2/igt@[email protected]
[28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-iclb7/igt@[email protected]

* igt@gem_exec_schedule@preempt-bsd1:
- shard-iclb: [SKIP][29] ([fdo#109276]) -> [PASS][30] +17 similar issues
[29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-iclb8/igt@[email protected]
[30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-iclb4/igt@[email protected]

* igt@gem_exec_suspend@basic-s4-devices:
- shard-hsw: [FAIL][31] ([fdo#111550]) -> [PASS][32]
[31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-hsw2/igt@[email protected]
[32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-hsw2/igt@[email protected]
- shard-apl: [FAIL][33] ([fdo#111550]) -> [PASS][34]
[33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-apl3/igt@[email protected]
[34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-apl4/igt@[email protected]

* igt@gem_mocs_settings@mocs-rc6-render:
- shard-apl: [SKIP][35] ([fdo#109271]) -> [PASS][36] +1 similar issue
[35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-apl3/igt@[email protected]
[36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-apl6/igt@[email protected]

* igt@gem_workarounds@suspend-resume-context:
- shard-kbl: [INCOMPLETE][37] ([fdo#103665]) -> [PASS][38]
[37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-kbl4/igt@[email protected]
[38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-kbl3/igt@[email protected]

* igt@i915_pm_rc6_residency@rc6-accuracy:
- shard-kbl: [SKIP][39] ([fdo#109271]) -> [PASS][40]
[39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-kbl2/igt@[email protected]
[40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-kbl6/igt@[email protected]

* igt@i915_pm_rpm@system-suspend:
- shard-hsw: [FAIL][41] ([fdo#111548]) -> [PASS][42] +5 similar issues
[41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-hsw2/igt@[email protected]
[42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-hsw2/igt@[email protected]

* igt@i915_suspend@forcewake:
- shard-hsw: [FAIL][43] ([fdo#103375]) -> [PASS][44] +5 similar issues
[43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-hsw2/igt@[email protected]
[44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-hsw1/igt@[email protected]

* igt@kms_frontbuffer_tracking@fbc-stridechange:
- shard-iclb: [FAIL][45] ([fdo#103167]) -> [PASS][46] +1 similar issue
[45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-iclb7/igt@[email protected]
[46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-iclb5/igt@[email protected]

* igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
- shard-snb: [FAIL][47] ([fdo#103375]) -> [PASS][48] +2 similar issues
[47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-snb6/igt@[email protected]
[48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-snb4/igt@[email protected]

* igt@kms_psr@psr2_primary_page_flip:
- shard-iclb: [SKIP][49] ([fdo#109441]) -> [PASS][50] +2 similar issues
[49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-iclb8/igt@kms_psr@psr2_primary_page_flip.html
[50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-iclb2/igt@kms_psr@psr2_primary_page_flip.html

* igt@kms_vblank@pipe-a-ts-continuation-suspend:
- shard-apl: [FAIL][51] ([fdo#103375]) -> [PASS][52]
[51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-apl3/igt@[email protected]
[52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-apl3/igt@[email protected]

* igt@perf_pmu@other-read-0:
- shard-apl: [FAIL][53] ([fdo#111545]) -> [PASS][54] +8 similar issues
[53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-apl3/igt@[email protected]
[54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-apl6/igt@[email protected]

#### Warnings ####

* igt@gem_ctx_isolation@vcs1-nonpriv:
- shard-iclb: [SKIP][55] ([fdo#109276]) -> [FAIL][56] ([fdo#111329])
[55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-iclb7/igt@[email protected]
[56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-iclb1/igt@[email protected]

* igt@gem_mocs_settings@mocs-reset-bsd2:
- shard-iclb: [FAIL][57] ([fdo#111330]) -> [SKIP][58] ([fdo#109276]) +1 similar issue
[57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-iclb1/igt@[email protected]
[58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-iclb5/igt@[email protected]

* igt@gem_mocs_settings@mocs-settings-bsd2:
- shard-iclb: [SKIP][59] ([fdo#109276]) -> [FAIL][60] ([fdo#111330])
[59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-iclb5/igt@[email protected]
[60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-iclb2/igt@[email protected]

* igt@i915_pm_rpm@modeset-lpsp-stress:
- shard-hsw: [FAIL][61] ([fdo#111548]) -> [SKIP][62] ([fdo#109271]) +1 similar issue
[61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-hsw2/igt@[email protected]
[62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-hsw4/igt@[email protected]

* igt@kms_cursor_crc@pipe-b-cursor-suspend:
- shard-apl: [DMESG-WARN][63] ([fdo#108566]) -> [FAIL][64] ([fdo#103375])
[63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-apl6/igt@[email protected]
[64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-apl8/igt@[email protected]

* igt@perf_pmu@cpu-hotplug:
- shard-hsw: [TIMEOUT][65] ([fdo#111546]) -> [INCOMPLETE][66] ([fdo#103540])
[65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_6841/shard-hsw2/igt@[email protected]
[66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/shard-hsw4/igt@[email protected]

[fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
[fdo#103375]: https://bugs.freedesktop.org/show_bug.cgi?id=103375
[fdo#103540]: https://bugs.freedesktop.org/show_bug.cgi?id=103540
[fdo#103665]: https://bugs.freedesktop.org/show_bug.cgi?id=103665
[fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
[fdo#108566]: https://bugs.freedesktop.org/show_bug.cgi?id=108566
[fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
[fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276
[fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
[fdo#109661]: https://bugs.freedesktop.org/show_bug.cgi?id=109661
[fdo#111325]: https://bugs.freedesktop.org/show_bug.cgi?id=111325
[fdo#111329]: https://bugs.freedesktop.org/show_bug.cgi?id=111329
[fdo#111330]: https://bugs.freedesktop.org/show_bug.cgi?id=111330
[fdo#111545]: https://bugs.freedesktop.org/show_bug.cgi?id=111545
[fdo#111546]: https://bugs.freedesktop.org/show_bug.cgi?id=111546
[fdo#111547]: https://bugs.freedesktop.org/show_bug.cgi?id=111547
[fdo#111548]: https://bugs.freedesktop.org/show_bug.cgi?id=111548
[fdo#111550]: https://bugs.freedesktop.org/show_bug.cgi?id=111550
[fdo#99912]: https://bugs.freedesktop.org/show_bug.cgi?id=99912

Participating hosts (10 -> 6)
------------------------------

Missing (4): pig-skl-6260u shard-skl pig-hsw-4770r pig-glk-j5005

Build changes
-------------

* CI: CI-20190529 -> None
* IGT: IGT_5171 -> IGTPW_3423
* Piglit: piglit_4509 -> None

CI-20190529: 20190529
CI_DRM_6841: 5c24bcfb9c6036b32dbfdbc22d773473880ff498 @ git://anongit.freedesktop.org/gfx-ci/linux
IGTPW_3423: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3423/
IGT_5171: 1911564805fe454919e8a5846534a0c1ef376a33 @ 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_3423/
_______________________________________________
igt-dev mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/igt-dev