All of lore.kernel.org
 help / color / mirror / Atom feed
* [Intel-gfx] [PATCH i-g-t] tests/i915/kms_big_fb: trigger async flip with a dummy flip
@ 2022-06-28 11:04 ` Arun R Murthy
  0 siblings, 0 replies; 22+ messages in thread
From: Arun R Murthy @ 2022-06-28 11:04 UTC (permalink / raw)
  To: igt-dev; +Cc: intel-gfx

In oder to trigger the async flip, a dummy flip is required after sync
flip so as to update the watermarks for async in KMD which happens as
part of this dummy flip. Thereafter async memory update will act as a
trigger register.
Capturing the CRC is done after the async flip as async flip at some
times can consume fairly a vblank period time.

Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
---
 tests/i915/kms_big_fb.c | 29 +++++++++++++++++++----------
 1 file changed, 19 insertions(+), 10 deletions(-)

diff --git a/tests/i915/kms_big_fb.c b/tests/i915/kms_big_fb.c
index d50fde45..6caf3c31 100644
--- a/tests/i915/kms_big_fb.c
+++ b/tests/i915/kms_big_fb.c
@@ -465,7 +465,7 @@ static bool test_pipe(data_t *data)
 static bool
 max_hw_stride_async_flip_test(data_t *data)
 {
-	uint32_t ret, startframe;
+	uint32_t ret, frame;
 	const uint32_t w = data->output->config.default_mode.hdisplay,
 		       h = data->output->config.default_mode.vdisplay;
 	igt_plane_t *primary;
@@ -519,7 +519,19 @@ max_hw_stride_async_flip_test(data_t *data)
 					  DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
 
 		igt_wait_for_vblank(data->drm_fd, data->display.pipes[primary->pipe->pipe].crtc_offset);
-		startframe = kmstest_get_vblank(data->drm_fd, data->pipe, 0) + 1;
+		/*
+		 * In older platforms (<= Gen10), async address update bit is double buffered.
+		 * So flip timestamp can be verified only from the second flip.
+		 * The first async flip just enables the async address update.
+		 * In platforms greater than DISPLAY13 the first async flip will be discarded
+		 * in order to change the watermark levels as per the optimization. Hence the
+		 * subsequent async flips will actually do the asynchronous flips.
+		 */
+		ret = drmModePageFlip(data->drm_fd, data->output->config.crtc->crtc_id,
+						      data->big_fb_flip[i].fb_id,
+						      DRM_MODE_PAGE_FLIP_ASYNC, NULL);
+		igt_wait_for_vblank(data->drm_fd, data->display.pipes[primary->pipe->pipe].crtc_offset);
+		frame = kmstest_get_vblank(data->drm_fd, data->pipe, 0) + 1;
 
 		for (int j = 0; j < 2; j++) {
 			do {
@@ -528,23 +540,20 @@ max_hw_stride_async_flip_test(data_t *data)
 						      DRM_MODE_PAGE_FLIP_ASYNC, NULL);
 			} while (ret == -EBUSY);
 			igt_assert(ret == 0);
+			igt_pipe_crc_get_for_frame(data->drm_fd, data->pipe_crc,
+					   frame, &compare_crc);
 
+			frame = kmstest_get_vblank(data->drm_fd, data->pipe, 0) + 1;
 			do {
 				ret = drmModePageFlip(data->drm_fd, data->output->config.crtc->crtc_id,
 						      data->big_fb.fb_id,
 						      DRM_MODE_PAGE_FLIP_ASYNC, NULL);
 			} while (ret == -EBUSY);
 			igt_assert(ret == 0);
+			igt_pipe_crc_get_for_frame(data->drm_fd, data->pipe_crc,
+					   frame, &async_crc);
 		}
 
-		igt_pipe_crc_get_for_frame(data->drm_fd, data->pipe_crc,
-					   startframe, &compare_crc);
-		igt_pipe_crc_get_for_frame(data->drm_fd, data->pipe_crc,
-					   startframe + 1, &async_crc);
-
-		igt_assert_f(kmstest_get_vblank(data->drm_fd, data->pipe, 0) -
-			     startframe == 1, "lost frames\n");
-
 		igt_assert_f(igt_check_crc_equal(&compare_crc, &async_crc)^(i^1),
 			     "CRC failure with async flip, crc %s match for checked round\n",
 			     i?"should":"shouldn't");
-- 
2.25.1


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

* [igt-dev] [PATCH i-g-t] tests/i915/kms_big_fb: trigger async flip with a dummy flip
@ 2022-06-28 11:04 ` Arun R Murthy
  0 siblings, 0 replies; 22+ messages in thread
From: Arun R Murthy @ 2022-06-28 11:04 UTC (permalink / raw)
  To: igt-dev; +Cc: intel-gfx, Arun R Murthy

In oder to trigger the async flip, a dummy flip is required after sync
flip so as to update the watermarks for async in KMD which happens as
part of this dummy flip. Thereafter async memory update will act as a
trigger register.
Capturing the CRC is done after the async flip as async flip at some
times can consume fairly a vblank period time.

Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
---
 tests/i915/kms_big_fb.c | 29 +++++++++++++++++++----------
 1 file changed, 19 insertions(+), 10 deletions(-)

diff --git a/tests/i915/kms_big_fb.c b/tests/i915/kms_big_fb.c
index d50fde45..6caf3c31 100644
--- a/tests/i915/kms_big_fb.c
+++ b/tests/i915/kms_big_fb.c
@@ -465,7 +465,7 @@ static bool test_pipe(data_t *data)
 static bool
 max_hw_stride_async_flip_test(data_t *data)
 {
-	uint32_t ret, startframe;
+	uint32_t ret, frame;
 	const uint32_t w = data->output->config.default_mode.hdisplay,
 		       h = data->output->config.default_mode.vdisplay;
 	igt_plane_t *primary;
@@ -519,7 +519,19 @@ max_hw_stride_async_flip_test(data_t *data)
 					  DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
 
 		igt_wait_for_vblank(data->drm_fd, data->display.pipes[primary->pipe->pipe].crtc_offset);
-		startframe = kmstest_get_vblank(data->drm_fd, data->pipe, 0) + 1;
+		/*
+		 * In older platforms (<= Gen10), async address update bit is double buffered.
+		 * So flip timestamp can be verified only from the second flip.
+		 * The first async flip just enables the async address update.
+		 * In platforms greater than DISPLAY13 the first async flip will be discarded
+		 * in order to change the watermark levels as per the optimization. Hence the
+		 * subsequent async flips will actually do the asynchronous flips.
+		 */
+		ret = drmModePageFlip(data->drm_fd, data->output->config.crtc->crtc_id,
+						      data->big_fb_flip[i].fb_id,
+						      DRM_MODE_PAGE_FLIP_ASYNC, NULL);
+		igt_wait_for_vblank(data->drm_fd, data->display.pipes[primary->pipe->pipe].crtc_offset);
+		frame = kmstest_get_vblank(data->drm_fd, data->pipe, 0) + 1;
 
 		for (int j = 0; j < 2; j++) {
 			do {
@@ -528,23 +540,20 @@ max_hw_stride_async_flip_test(data_t *data)
 						      DRM_MODE_PAGE_FLIP_ASYNC, NULL);
 			} while (ret == -EBUSY);
 			igt_assert(ret == 0);
+			igt_pipe_crc_get_for_frame(data->drm_fd, data->pipe_crc,
+					   frame, &compare_crc);
 
+			frame = kmstest_get_vblank(data->drm_fd, data->pipe, 0) + 1;
 			do {
 				ret = drmModePageFlip(data->drm_fd, data->output->config.crtc->crtc_id,
 						      data->big_fb.fb_id,
 						      DRM_MODE_PAGE_FLIP_ASYNC, NULL);
 			} while (ret == -EBUSY);
 			igt_assert(ret == 0);
+			igt_pipe_crc_get_for_frame(data->drm_fd, data->pipe_crc,
+					   frame, &async_crc);
 		}
 
-		igt_pipe_crc_get_for_frame(data->drm_fd, data->pipe_crc,
-					   startframe, &compare_crc);
-		igt_pipe_crc_get_for_frame(data->drm_fd, data->pipe_crc,
-					   startframe + 1, &async_crc);
-
-		igt_assert_f(kmstest_get_vblank(data->drm_fd, data->pipe, 0) -
-			     startframe == 1, "lost frames\n");
-
 		igt_assert_f(igt_check_crc_equal(&compare_crc, &async_crc)^(i^1),
 			     "CRC failure with async flip, crc %s match for checked round\n",
 			     i?"should":"shouldn't");
-- 
2.25.1

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

* [igt-dev] ✗ GitLab.Pipeline: warning for tests/i915/kms_big_fb: trigger async flip with a dummy flip
  2022-06-28 11:04 ` [igt-dev] " Arun R Murthy
  (?)
@ 2022-06-28 13:11 ` Patchwork
  -1 siblings, 0 replies; 22+ messages in thread
From: Patchwork @ 2022-06-28 13:11 UTC (permalink / raw)
  To: Arun R Murthy; +Cc: igt-dev

== Series Details ==

Series: tests/i915/kms_big_fb: trigger async flip with a dummy flip
URL   : https://patchwork.freedesktop.org/series/105726/
State : warning

== Summary ==

Pipeline status: FAILED.

see https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/pipelines/624197 for the overview.

build:tests-debian-minimal has failed (https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/jobs/24662438):
  Using docker image sha256:08904a47f4efcc161569a9b7f88c458fc6e3e85a2225132246af9cf5cc6c4e5b for registry.freedesktop.org/gfx-ci/igt-ci-tags/build-debian-minimal:commit-dff17605d184c7417a6a220ec8464b43d0e07823 with digest registry.freedesktop.org/gfx-ci/igt-ci-tags/build-debian-minimal@sha256:8b51a86fd81e64c501c9521c37fc8ad6f2550976931c510eb0ff4f6a328d477a ...
  section_end:1656421636:prepare_executor
  section_start:1656421636:prepare_script
  Preparing environment
  Running on runner-thys1ka2-project-3185-concurrent-0 via gst-htz-2...
  section_end:1656421637:prepare_script
  section_start:1656421637:get_sources
  Getting source from Git repository
  $ eval "$CI_PRE_CLONE_SCRIPT"
  Fetching changes...
  Initialized empty Git repository in /builds/gfx-ci/igt-ci-tags/.git/
  Created fresh repository.
  error: RPC failed; curl 92 HTTP/2 stream 0 was not closed cleanly: PROTOCOL_ERROR (err 1)
  fatal: the remote end hung up unexpectedly
  section_end:1656421699:get_sources
  section_start:1656421699:cleanup_file_variables
  Cleaning up project directory and file based variables
  section_end:1656421700:cleanup_file_variables
  ERROR: Job failed: exit code 1

== Logs ==

For more details see: https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/-/pipelines/624197

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

* [igt-dev] ✓ Fi.CI.BAT: success for tests/i915/kms_big_fb: trigger async flip with a dummy flip
  2022-06-28 11:04 ` [igt-dev] " Arun R Murthy
  (?)
  (?)
@ 2022-06-28 13:37 ` Patchwork
  -1 siblings, 0 replies; 22+ messages in thread
From: Patchwork @ 2022-06-28 13:37 UTC (permalink / raw)
  To: Arun R Murthy; +Cc: igt-dev

[-- Attachment #1: Type: text/plain, Size: 6526 bytes --]

== Series Details ==

Series: tests/i915/kms_big_fb: trigger async flip with a dummy flip
URL   : https://patchwork.freedesktop.org/series/105726/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_11819 -> IGTPW_7419
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/index.html

Participating hosts (39 -> 39)
------------------------------

  Additional (2): bat-dg2-8 bat-dg2-9 
  Missing    (2): fi-bdw-samus fi-pnv-d510 

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

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

### IGT changes ###

#### Issues hit ####

  * igt@i915_selftest@live@execlists:
    - fi-bsw-nick:        [PASS][1] -> [INCOMPLETE][2] ([i915#2940])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/fi-bsw-nick/igt@i915_selftest@live@execlists.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/fi-bsw-nick/igt@i915_selftest@live@execlists.html

  * igt@i915_selftest@live@gem:
    - fi-blb-e6850:       NOTRUN -> [DMESG-FAIL][3] ([i915#4528])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/fi-blb-e6850/igt@i915_selftest@live@gem.html

  * igt@kms_busy@basic@flip:
    - bat-adlp-4:         [PASS][4] -> [DMESG-WARN][5] ([i915#3576])
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/bat-adlp-4/igt@kms_busy@basic@flip.html
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/bat-adlp-4/igt@kms_busy@basic@flip.html

  * igt@runner@aborted:
    - fi-bsw-nick:        NOTRUN -> [FAIL][6] ([fdo#109271] / [i915#3428] / [i915#4312])
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/fi-bsw-nick/igt@runner@aborted.html

  
#### Possible fixes ####

  * igt@i915_selftest@live@gtt:
    - fi-bdw-5557u:       [DMESG-FAIL][7] ([i915#3674]) -> [PASS][8]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/fi-bdw-5557u/igt@i915_selftest@live@gtt.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/fi-bdw-5557u/igt@i915_selftest@live@gtt.html

  * igt@i915_selftest@live@hangcheck:
    - {fi-ehl-2}:         [INCOMPLETE][9] ([i915#5153]) -> [PASS][10]
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/fi-ehl-2/igt@i915_selftest@live@hangcheck.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/fi-ehl-2/igt@i915_selftest@live@hangcheck.html
    - bat-dg1-6:          [DMESG-FAIL][11] ([i915#4494] / [i915#4957]) -> [PASS][12]
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/bat-dg1-6/igt@i915_selftest@live@hangcheck.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/bat-dg1-6/igt@i915_selftest@live@hangcheck.html

  * igt@i915_selftest@live@requests:
    - fi-blb-e6850:       [DMESG-FAIL][13] ([i915#4528]) -> [PASS][14]
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/fi-blb-e6850/igt@i915_selftest@live@requests.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/fi-blb-e6850/igt@i915_selftest@live@requests.html

  * igt@kms_flip@basic-flip-vs-modeset@b-edp1:
    - bat-adlp-4:         [DMESG-WARN][15] ([i915#3576]) -> [PASS][16]
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/bat-adlp-4/igt@kms_flip@basic-flip-vs-modeset@b-edp1.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/bat-adlp-4/igt@kms_flip@basic-flip-vs-modeset@b-edp1.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1155]: https://gitlab.freedesktop.org/drm/intel/issues/1155
  [i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
  [i915#2940]: https://gitlab.freedesktop.org/drm/intel/issues/2940
  [i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
  [i915#3428]: https://gitlab.freedesktop.org/drm/intel/issues/3428
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3576]: https://gitlab.freedesktop.org/drm/intel/issues/3576
  [i915#3595]: https://gitlab.freedesktop.org/drm/intel/issues/3595
  [i915#3674]: https://gitlab.freedesktop.org/drm/intel/issues/3674
  [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
  [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
  [i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
  [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
  [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
  [i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213
  [i915#4215]: https://gitlab.freedesktop.org/drm/intel/issues/4215
  [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
  [i915#4494]: https://gitlab.freedesktop.org/drm/intel/issues/4494
  [i915#4528]: https://gitlab.freedesktop.org/drm/intel/issues/4528
  [i915#4579]: https://gitlab.freedesktop.org/drm/intel/issues/4579
  [i915#4873]: https://gitlab.freedesktop.org/drm/intel/issues/4873
  [i915#4957]: https://gitlab.freedesktop.org/drm/intel/issues/4957
  [i915#5122]: https://gitlab.freedesktop.org/drm/intel/issues/5122
  [i915#5153]: https://gitlab.freedesktop.org/drm/intel/issues/5153
  [i915#5174]: https://gitlab.freedesktop.org/drm/intel/issues/5174
  [i915#5190]: https://gitlab.freedesktop.org/drm/intel/issues/5190
  [i915#5274]: https://gitlab.freedesktop.org/drm/intel/issues/5274
  [i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354
  [i915#5763]: https://gitlab.freedesktop.org/drm/intel/issues/5763
  [i915#5903]: https://gitlab.freedesktop.org/drm/intel/issues/5903
  [i915#6299]: https://gitlab.freedesktop.org/drm/intel/issues/6299


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

  * CI: CI-20190529 -> None
  * IGT: IGT_6546 -> IGTPW_7419

  CI-20190529: 20190529
  CI_DRM_11819: 53a93d1cb8af6ac85c8e1be9ddd7936aca4ca100 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_7419: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/index.html
  IGT_6546: e3d52c91a9730f7a1f74f375b6a6ac6085a36172 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/index.html

[-- Attachment #2: Type: text/html, Size: 5711 bytes --]

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

* [igt-dev] ✗ Fi.CI.IGT: failure for tests/i915/kms_big_fb: trigger async flip with a dummy flip
  2022-06-28 11:04 ` [igt-dev] " Arun R Murthy
                   ` (2 preceding siblings ...)
  (?)
@ 2022-06-29  5:26 ` Patchwork
  -1 siblings, 0 replies; 22+ messages in thread
From: Patchwork @ 2022-06-29  5:26 UTC (permalink / raw)
  To: Murthy, Arun R; +Cc: igt-dev

[-- Attachment #1: Type: text/plain, Size: 62167 bytes --]

== Series Details ==

Series: tests/i915/kms_big_fb: trigger async flip with a dummy flip
URL   : https://patchwork.freedesktop.org/series/105726/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_11819_full -> IGTPW_7419_full
====================================================

Summary
-------

  **FAILURE**

  Serious unknown changes coming with IGTPW_7419_full absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_7419_full, please notify your bug team to allow them
  to document this new failure mode, which will reduce false positives in CI.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/index.html

Participating hosts (13 -> 10)
------------------------------

  Missing    (3): pig-skl-6260u pig-kbl-iris pig-glk-j5005 

Possible new issues
-------------------

  Here are the unknown changes that may have been introduced in IGTPW_7419_full:

### IGT changes ###

#### Possible regressions ####

  * igt@gem_exec_schedule@lateslice@bcs0:
    - shard-glk:          [PASS][1] -> [INCOMPLETE][2]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-glk7/igt@gem_exec_schedule@lateslice@bcs0.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-glk5/igt@gem_exec_schedule@lateslice@bcs0.html

  * igt@kms_rotation_crc@sprite-rotation-90-pos-100-0:
    - shard-glk:          [PASS][3] -> [DMESG-WARN][4] +1 similar issue
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-glk3/igt@kms_rotation_crc@sprite-rotation-90-pos-100-0.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-glk9/igt@kms_rotation_crc@sprite-rotation-90-pos-100-0.html

  
#### Suppressed ####

  The following results come from untrusted machines, tests, or statuses.
  They do not affect the overall result.

  * igt@device_reset@unbind-reset-rebind:
    - {shard-rkl}:        [PASS][5] -> [INCOMPLETE][6]
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-1/igt@device_reset@unbind-reset-rebind.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-5/igt@device_reset@unbind-reset-rebind.html

  * igt@i915_selftest@live@gtt:
    - {shard-rkl}:        [PASS][7] -> [DMESG-FAIL][8]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-6/igt@i915_selftest@live@gtt.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-5/igt@i915_selftest@live@gtt.html

  * igt@kms_busy@basic-hang@modeset-pipe-a:
    - {shard-dg1}:        NOTRUN -> [FAIL][9] +3 similar issues
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-dg1-18/igt@kms_busy@basic-hang@modeset-pipe-a.html

  * igt@kms_ccs@pipe-c-crc-primary-basic-4_tiled_dg2_rc_ccs:
    - {shard-dg1}:        [SKIP][10] ([i915#6095]) -> [SKIP][11]
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-dg1-17/igt@kms_ccs@pipe-c-crc-primary-basic-4_tiled_dg2_rc_ccs.html
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-dg1-18/igt@kms_ccs@pipe-c-crc-primary-basic-4_tiled_dg2_rc_ccs.html

  
New tests
---------

  New tests have been introduced between CI_DRM_11819_full and IGTPW_7419_full:

### New IGT tests (4) ###

  * igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-a-hdmi-a-3:
    - Statuses : 1 pass(s)
    - Exec time: [0.60] s

  * igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-b-hdmi-a-3:
    - Statuses : 1 pass(s)
    - Exec time: [0.52] s

  * igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-c-hdmi-a-3:
    - Statuses : 1 pass(s)
    - Exec time: [0.52] s

  * igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-d-hdmi-a-3:
    - Statuses : 1 pass(s)
    - Exec time: [0.53] s

  

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

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

### IGT changes ###

#### Issues hit ####

  * igt@feature_discovery@psr2:
    - shard-iclb:         [PASS][12] -> [SKIP][13] ([i915#658])
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-iclb2/igt@feature_discovery@psr2.html
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb6/igt@feature_discovery@psr2.html

  * igt@gem_ctx_exec@basic-nohangcheck:
    - shard-tglb:         [PASS][14] -> [FAIL][15] ([i915#6268])
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-tglb5/igt@gem_ctx_exec@basic-nohangcheck.html
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb7/igt@gem_ctx_exec@basic-nohangcheck.html

  * igt@gem_ctx_persistence@engines-mixed:
    - shard-snb:          NOTRUN -> [SKIP][16] ([fdo#109271] / [i915#1099]) +1 similar issue
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-snb6/igt@gem_ctx_persistence@engines-mixed.html

  * igt@gem_ctx_sseu@invalid-sseu:
    - shard-tglb:         NOTRUN -> [SKIP][17] ([i915#280])
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb7/igt@gem_ctx_sseu@invalid-sseu.html

  * igt@gem_eio@in-flight-contexts-1us:
    - shard-tglb:         [PASS][18] -> [TIMEOUT][19] ([i915#3063])
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-tglb3/igt@gem_eio@in-flight-contexts-1us.html
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb7/igt@gem_eio@in-flight-contexts-1us.html

  * igt@gem_eio@kms:
    - shard-tglb:         [PASS][20] -> [FAIL][21] ([i915#5784])
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-tglb6/igt@gem_eio@kms.html
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb5/igt@gem_eio@kms.html

  * igt@gem_eio@unwedge-stress:
    - shard-tglb:         NOTRUN -> [FAIL][22] ([i915#5784])
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb2/igt@gem_eio@unwedge-stress.html

  * igt@gem_exec_balancer@parallel-contexts:
    - shard-iclb:         [PASS][23] -> [SKIP][24] ([i915#4525]) +1 similar issue
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-iclb2/igt@gem_exec_balancer@parallel-contexts.html
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb7/igt@gem_exec_balancer@parallel-contexts.html

  * igt@gem_exec_balancer@parallel-keep-submit-fence:
    - shard-iclb:         NOTRUN -> [SKIP][25] ([i915#4525])
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb5/igt@gem_exec_balancer@parallel-keep-submit-fence.html

  * igt@gem_exec_fair@basic-flow@rcs0:
    - shard-tglb:         [PASS][26] -> [FAIL][27] ([i915#2842])
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-tglb6/igt@gem_exec_fair@basic-flow@rcs0.html
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb1/igt@gem_exec_fair@basic-flow@rcs0.html

  * igt@gem_exec_fair@basic-none-share@rcs0:
    - shard-tglb:         NOTRUN -> [FAIL][28] ([i915#2842]) +1 similar issue
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb7/igt@gem_exec_fair@basic-none-share@rcs0.html
    - shard-glk:          [PASS][29] -> [FAIL][30] ([i915#2842])
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-glk2/igt@gem_exec_fair@basic-none-share@rcs0.html
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-glk9/igt@gem_exec_fair@basic-none-share@rcs0.html

  * igt@gem_exec_fair@basic-none@vcs1:
    - shard-kbl:          [PASS][31] -> [FAIL][32] ([i915#2842]) +2 similar issues
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-kbl1/igt@gem_exec_fair@basic-none@vcs1.html
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-kbl1/igt@gem_exec_fair@basic-none@vcs1.html

  * igt@gem_exec_fair@basic-pace-share@rcs0:
    - shard-glk:          NOTRUN -> [FAIL][33] ([i915#2842])
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-glk9/igt@gem_exec_fair@basic-pace-share@rcs0.html

  * igt@gem_exec_fair@basic-pace-solo@rcs0:
    - shard-iclb:         [PASS][34] -> [FAIL][35] ([i915#2842])
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-iclb7/igt@gem_exec_fair@basic-pace-solo@rcs0.html
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb3/igt@gem_exec_fair@basic-pace-solo@rcs0.html

  * igt@gem_huc_copy@huc-copy:
    - shard-tglb:         [PASS][36] -> [SKIP][37] ([i915#2190])
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-tglb1/igt@gem_huc_copy@huc-copy.html
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb6/igt@gem_huc_copy@huc-copy.html

  * igt@gem_pxp@protected-raw-src-copy-not-readible:
    - shard-iclb:         NOTRUN -> [SKIP][38] ([i915#4270])
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb3/igt@gem_pxp@protected-raw-src-copy-not-readible.html

  * igt@gem_pxp@reject-modify-context-protection-off-1:
    - shard-tglb:         NOTRUN -> [SKIP][39] ([i915#4270]) +2 similar issues
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb2/igt@gem_pxp@reject-modify-context-protection-off-1.html

  * igt@gem_render_copy@yf-tiled-mc-ccs-to-vebox-y-tiled:
    - shard-iclb:         NOTRUN -> [SKIP][40] ([i915#768])
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb7/igt@gem_render_copy@yf-tiled-mc-ccs-to-vebox-y-tiled.html

  * igt@gem_softpin@evict-snoop:
    - shard-tglb:         NOTRUN -> [SKIP][41] ([fdo#109312])
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb1/igt@gem_softpin@evict-snoop.html
    - shard-iclb:         NOTRUN -> [SKIP][42] ([fdo#109312])
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb3/igt@gem_softpin@evict-snoop.html

  * igt@gem_userptr_blits@readonly-unsync:
    - shard-tglb:         NOTRUN -> [SKIP][43] ([i915#3297])
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb6/igt@gem_userptr_blits@readonly-unsync.html
    - shard-iclb:         NOTRUN -> [SKIP][44] ([i915#3297])
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb8/igt@gem_userptr_blits@readonly-unsync.html

  * igt@gen9_exec_parse@basic-rejected-ctx-param:
    - shard-snb:          NOTRUN -> [SKIP][45] ([fdo#109271]) +86 similar issues
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-snb5/igt@gen9_exec_parse@basic-rejected-ctx-param.html
    - shard-iclb:         NOTRUN -> [SKIP][46] ([i915#2856])
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb2/igt@gen9_exec_parse@basic-rejected-ctx-param.html

  * igt@gen9_exec_parse@unaligned-jump:
    - shard-tglb:         NOTRUN -> [SKIP][47] ([i915#2527] / [i915#2856]) +1 similar issue
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb6/igt@gen9_exec_parse@unaligned-jump.html

  * igt@i915_module_load@reload-with-fault-injection:
    - shard-snb:          [PASS][48] -> [DMESG-WARN][49] ([i915#6201])
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-snb4/igt@i915_module_load@reload-with-fault-injection.html
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-snb7/igt@i915_module_load@reload-with-fault-injection.html

  * igt@i915_pm_rpm@modeset-non-lpsp-stress-no-wait:
    - shard-iclb:         NOTRUN -> [SKIP][50] ([fdo#110892])
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb2/igt@i915_pm_rpm@modeset-non-lpsp-stress-no-wait.html
    - shard-tglb:         NOTRUN -> [SKIP][51] ([fdo#111644] / [i915#1397] / [i915#2411])
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb5/igt@i915_pm_rpm@modeset-non-lpsp-stress-no-wait.html

  * igt@i915_pm_rpm@pc8-residency:
    - shard-iclb:         NOTRUN -> [SKIP][52] ([fdo#109293] / [fdo#109506])
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb2/igt@i915_pm_rpm@pc8-residency.html
    - shard-tglb:         NOTRUN -> [SKIP][53] ([fdo#109506] / [i915#2411])
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb6/igt@i915_pm_rpm@pc8-residency.html

  * igt@i915_suspend@fence-restore-untiled:
    - shard-apl:          [PASS][54] -> [DMESG-WARN][55] ([i915#180])
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-apl1/igt@i915_suspend@fence-restore-untiled.html
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-apl7/igt@i915_suspend@fence-restore-untiled.html

  * igt@kms_atomic@plane-primary-overlay-mutable-zpos:
    - shard-tglb:         NOTRUN -> [SKIP][56] ([i915#404])
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb1/igt@kms_atomic@plane-primary-overlay-mutable-zpos.html
    - shard-iclb:         NOTRUN -> [SKIP][57] ([i915#404])
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb8/igt@kms_atomic@plane-primary-overlay-mutable-zpos.html

  * igt@kms_big_fb@4-tiled-32bpp-rotate-90:
    - shard-apl:          NOTRUN -> [SKIP][58] ([fdo#109271]) +160 similar issues
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-apl7/igt@kms_big_fb@4-tiled-32bpp-rotate-90.html
    - shard-tglb:         NOTRUN -> [SKIP][59] ([i915#5286]) +2 similar issues
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb7/igt@kms_big_fb@4-tiled-32bpp-rotate-90.html
    - shard-iclb:         NOTRUN -> [SKIP][60] ([i915#5286])
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb6/igt@kms_big_fb@4-tiled-32bpp-rotate-90.html

  * igt@kms_big_fb@y-tiled-64bpp-rotate-90:
    - shard-tglb:         NOTRUN -> [SKIP][61] ([fdo#111614]) +1 similar issue
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb6/igt@kms_big_fb@y-tiled-64bpp-rotate-90.html

  * igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-180-hflip:
    - shard-tglb:         NOTRUN -> [SKIP][62] ([fdo#111615]) +6 similar issues
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb5/igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-180-hflip.html

  * igt@kms_ccs@pipe-a-bad-pixel-format-yf_tiled_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][63] ([fdo#111615] / [i915#3689]) +4 similar issues
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb3/igt@kms_ccs@pipe-a-bad-pixel-format-yf_tiled_ccs.html

  * igt@kms_ccs@pipe-b-bad-rotation-90-y_tiled_gen12_mc_ccs:
    - shard-apl:          NOTRUN -> [SKIP][64] ([fdo#109271] / [i915#3886]) +4 similar issues
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-apl1/igt@kms_ccs@pipe-b-bad-rotation-90-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-b-crc-sprite-planes-basic-4_tiled_dg2_rc_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][65] ([i915#6095]) +1 similar issue
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb3/igt@kms_ccs@pipe-b-crc-sprite-planes-basic-4_tiled_dg2_rc_ccs.html

  * igt@kms_ccs@pipe-b-random-ccs-data-y_tiled_gen12_mc_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][66] ([i915#3689] / [i915#3886])
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb5/igt@kms_ccs@pipe-b-random-ccs-data-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-c-bad-pixel-format-4_tiled_dg2_rc_ccs_cc:
    - shard-tglb:         NOTRUN -> [SKIP][67] ([i915#3689] / [i915#6095]) +2 similar issues
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb3/igt@kms_ccs@pipe-c-bad-pixel-format-4_tiled_dg2_rc_ccs_cc.html

  * igt@kms_ccs@pipe-c-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs_cc:
    - shard-glk:          NOTRUN -> [SKIP][68] ([fdo#109271] / [i915#3886]) +4 similar issues
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-glk8/igt@kms_ccs@pipe-c-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs_cc.html
    - shard-iclb:         NOTRUN -> [SKIP][69] ([fdo#109278] / [i915#3886]) +2 similar issues
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb8/igt@kms_ccs@pipe-c-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs_cc.html
    - shard-kbl:          NOTRUN -> [SKIP][70] ([fdo#109271] / [i915#3886]) +2 similar issues
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-kbl6/igt@kms_ccs@pipe-c-crc-sprite-planes-basic-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-c-random-ccs-data-y_tiled_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][71] ([i915#3689]) +9 similar issues
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb2/igt@kms_ccs@pipe-c-random-ccs-data-y_tiled_ccs.html

  * igt@kms_ccs@pipe-d-random-ccs-data-4_tiled_dg2_mc_ccs:
    - shard-iclb:         NOTRUN -> [SKIP][72] ([fdo#109278]) +6 similar issues
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb7/igt@kms_ccs@pipe-d-random-ccs-data-4_tiled_dg2_mc_ccs.html

  * igt@kms_chamelium@dp-frame-dump:
    - shard-glk:          NOTRUN -> [SKIP][73] ([fdo#109271] / [fdo#111827]) +4 similar issues
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-glk8/igt@kms_chamelium@dp-frame-dump.html

  * igt@kms_chamelium@dp-hpd-fast:
    - shard-tglb:         NOTRUN -> [SKIP][74] ([fdo#109284] / [fdo#111827]) +7 similar issues
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb3/igt@kms_chamelium@dp-hpd-fast.html

  * igt@kms_chamelium@hdmi-aspect-ratio:
    - shard-apl:          NOTRUN -> [SKIP][75] ([fdo#109271] / [fdo#111827]) +5 similar issues
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-apl4/igt@kms_chamelium@hdmi-aspect-ratio.html

  * igt@kms_chamelium@hdmi-hpd-enable-disable-mode:
    - shard-iclb:         NOTRUN -> [SKIP][76] ([fdo#109284] / [fdo#111827]) +1 similar issue
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb3/igt@kms_chamelium@hdmi-hpd-enable-disable-mode.html

  * igt@kms_color@pipe-c-deep-color:
    - shard-tglb:         NOTRUN -> [SKIP][77] ([i915#3555]) +1 similar issue
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb6/igt@kms_color@pipe-c-deep-color.html

  * igt@kms_color_chamelium@pipe-c-ctm-0-75:
    - shard-kbl:          NOTRUN -> [SKIP][78] ([fdo#109271] / [fdo#111827]) +4 similar issues
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-kbl3/igt@kms_color_chamelium@pipe-c-ctm-0-75.html

  * igt@kms_color_chamelium@pipe-d-ctm-negative:
    - shard-iclb:         NOTRUN -> [SKIP][79] ([fdo#109278] / [fdo#109284] / [fdo#111827])
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb6/igt@kms_color_chamelium@pipe-d-ctm-negative.html
    - shard-snb:          NOTRUN -> [SKIP][80] ([fdo#109271] / [fdo#111827]) +2 similar issues
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-snb6/igt@kms_color_chamelium@pipe-d-ctm-negative.html

  * igt@kms_content_protection@dp-mst-type-1:
    - shard-tglb:         NOTRUN -> [SKIP][81] ([i915#3116] / [i915#3299])
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb2/igt@kms_content_protection@dp-mst-type-1.html

  * igt@kms_content_protection@srm:
    - shard-kbl:          NOTRUN -> [TIMEOUT][82] ([i915#1319])
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-kbl4/igt@kms_content_protection@srm.html
    - shard-apl:          NOTRUN -> [TIMEOUT][83] ([i915#1319])
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-apl8/igt@kms_content_protection@srm.html
    - shard-tglb:         NOTRUN -> [SKIP][84] ([i915#1063])
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb3/igt@kms_content_protection@srm.html
    - shard-iclb:         NOTRUN -> [SKIP][85] ([fdo#109300] / [fdo#111066])
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb1/igt@kms_content_protection@srm.html

  * igt@kms_cursor_crc@cursor-offscreen@pipe-c-edp-1-32x10:
    - shard-tglb:         NOTRUN -> [SKIP][86] ([i915#4462]) +15 similar issues
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb3/igt@kms_cursor_crc@cursor-offscreen@pipe-c-edp-1-32x10.html

  * igt@kms_cursor_crc@cursor-random@pipe-c-edp-1-512x170:
    - shard-tglb:         NOTRUN -> [SKIP][87] ([i915#3359]) +15 similar issues
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb5/igt@kms_cursor_crc@cursor-random@pipe-c-edp-1-512x170.html

  * igt@kms_cursor_legacy@2x-flip-vs-cursor-atomic:
    - shard-tglb:         NOTRUN -> [SKIP][88] ([fdo#109274] / [fdo#111825]) +3 similar issues
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb3/igt@kms_cursor_legacy@2x-flip-vs-cursor-atomic.html

  * igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions:
    - shard-glk:          [PASS][89] -> [FAIL][90] ([i915#2346])
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-glk8/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions.html
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-glk9/igt@kms_cursor_legacy@flip-vs-cursor@atomic-transitions.html

  * igt@kms_dither@fb-8bpc-vs-panel-8bpc@pipe-a-edp-1:
    - shard-tglb:         NOTRUN -> [SKIP][91] ([i915#6076])
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb1/igt@kms_dither@fb-8bpc-vs-panel-8bpc@pipe-a-edp-1.html

  * igt@kms_draw_crc@draw-method-xrgb8888-blt-4tiled:
    - shard-tglb:         NOTRUN -> [SKIP][92] ([i915#5287])
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb1/igt@kms_draw_crc@draw-method-xrgb8888-blt-4tiled.html

  * igt@kms_flip@2x-flip-vs-wf_vblank:
    - shard-iclb:         NOTRUN -> [SKIP][93] ([fdo#109274])
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb1/igt@kms_flip@2x-flip-vs-wf_vblank.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible@c-hdmi-a1:
    - shard-glk:          [PASS][94] -> [FAIL][95] ([i915#79])
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-glk7/igt@kms_flip@flip-vs-expired-vblank-interruptible@c-hdmi-a1.html
   [95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-glk9/igt@kms_flip@flip-vs-expired-vblank-interruptible@c-hdmi-a1.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling:
    - shard-iclb:         NOTRUN -> [SKIP][96] ([i915#2587])
   [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb3/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs-upscaling.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling:
    - shard-iclb:         [PASS][97] -> [SKIP][98] ([i915#3701])
   [97]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-iclb6/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling.html
   [98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb2/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling.html

  * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-shrfb-draw-blt:
    - shard-tglb:         NOTRUN -> [SKIP][99] ([fdo#109280] / [fdo#111825]) +23 similar issues
   [99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb2/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-pri-shrfb-draw-blt.html

  * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-shrfb-pgflip-blt:
    - shard-iclb:         NOTRUN -> [SKIP][100] ([fdo#109280]) +15 similar issues
   [100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb5/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-shrfb-pgflip-blt.html

  * igt@kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-draw-mmap-cpu:
    - shard-glk:          NOTRUN -> [SKIP][101] ([fdo#109271]) +94 similar issues
   [101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-glk9/igt@kms_frontbuffer_tracking@psr-2p-scndscrn-spr-indfb-draw-mmap-cpu.html

  * igt@kms_invalid_mode@clock-too-high:
    - shard-tglb:         NOTRUN -> [SKIP][102] ([i915#4278])
   [102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb2/igt@kms_invalid_mode@clock-too-high.html

  * igt@kms_pipe_b_c_ivb@pipe-b-double-modeset-then-modeset-pipe-c:
    - shard-tglb:         NOTRUN -> [SKIP][103] ([fdo#109289]) +1 similar issue
   [103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb7/igt@kms_pipe_b_c_ivb@pipe-b-double-modeset-then-modeset-pipe-c.html
    - shard-iclb:         NOTRUN -> [SKIP][104] ([fdo#109289])
   [104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb5/igt@kms_pipe_b_c_ivb@pipe-b-double-modeset-then-modeset-pipe-c.html

  * igt@kms_plane_alpha_blend@pipe-b-alpha-basic:
    - shard-apl:          NOTRUN -> [FAIL][105] ([fdo#108145] / [i915#265])
   [105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-apl3/igt@kms_plane_alpha_blend@pipe-b-alpha-basic.html
    - shard-glk:          NOTRUN -> [FAIL][106] ([fdo#108145] / [i915#265])
   [106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-glk1/igt@kms_plane_alpha_blend@pipe-b-alpha-basic.html
    - shard-kbl:          NOTRUN -> [FAIL][107] ([fdo#108145] / [i915#265])
   [107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-kbl6/igt@kms_plane_alpha_blend@pipe-b-alpha-basic.html

  * igt@kms_plane_alpha_blend@pipe-b-alpha-transparent-fb:
    - shard-glk:          NOTRUN -> [FAIL][108] ([i915#265])
   [108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-glk7/igt@kms_plane_alpha_blend@pipe-b-alpha-transparent-fb.html
    - shard-kbl:          NOTRUN -> [FAIL][109] ([i915#265])
   [109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-kbl4/igt@kms_plane_alpha_blend@pipe-b-alpha-transparent-fb.html
    - shard-apl:          NOTRUN -> [FAIL][110] ([i915#265])
   [110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-apl3/igt@kms_plane_alpha_blend@pipe-b-alpha-transparent-fb.html

  * igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area:
    - shard-apl:          NOTRUN -> [SKIP][111] ([fdo#109271] / [i915#658])
   [111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-apl7/igt@kms_psr2_sf@overlay-plane-update-sf-dmg-area.html

  * igt@kms_psr@psr2_primary_mmap_gtt:
    - shard-tglb:         NOTRUN -> [FAIL][112] ([i915#132] / [i915#3467]) +1 similar issue
   [112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb2/igt@kms_psr@psr2_primary_mmap_gtt.html

  * igt@kms_psr@psr2_suspend:
    - shard-iclb:         [PASS][113] -> [SKIP][114] ([fdo#109441])
   [113]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-iclb2/igt@kms_psr@psr2_suspend.html
   [114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb5/igt@kms_psr@psr2_suspend.html

  * igt@kms_scaling_modes@scaling-mode-none@edp-1-pipe-d:
    - shard-tglb:         NOTRUN -> [SKIP][115] ([i915#5030]) +3 similar issues
   [115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb5/igt@kms_scaling_modes@scaling-mode-none@edp-1-pipe-d.html

  * igt@kms_sysfs_edid_timing:
    - shard-kbl:          NOTRUN -> [FAIL][116] ([IGT#2])
   [116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-kbl4/igt@kms_sysfs_edid_timing.html
    - shard-apl:          NOTRUN -> [FAIL][117] ([IGT#2])
   [117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-apl8/igt@kms_sysfs_edid_timing.html

  * igt@kms_tv_load_detect@load-detect:
    - shard-tglb:         NOTRUN -> [SKIP][118] ([fdo#109309])
   [118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb2/igt@kms_tv_load_detect@load-detect.html
    - shard-iclb:         NOTRUN -> [SKIP][119] ([fdo#109309])
   [119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb2/igt@kms_tv_load_detect@load-detect.html

  * igt@kms_vrr@flip-basic:
    - shard-iclb:         NOTRUN -> [SKIP][120] ([i915#3555])
   [120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb1/igt@kms_vrr@flip-basic.html

  * igt@nouveau_crc@pipe-c-ctx-flip-skip-current-frame:
    - shard-tglb:         NOTRUN -> [SKIP][121] ([i915#2530]) +1 similar issue
   [121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb1/igt@nouveau_crc@pipe-c-ctx-flip-skip-current-frame.html
    - shard-iclb:         NOTRUN -> [SKIP][122] ([i915#2530])
   [122]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb6/igt@nouveau_crc@pipe-c-ctx-flip-skip-current-frame.html

  * igt@prime_nv_api@i915_self_import:
    - shard-tglb:         NOTRUN -> [SKIP][123] ([fdo#109291]) +2 similar issues
   [123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb2/igt@prime_nv_api@i915_self_import.html

  * igt@prime_nv_pcopy@test1_macro:
    - shard-iclb:         NOTRUN -> [SKIP][124] ([fdo#109291])
   [124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb8/igt@prime_nv_pcopy@test1_macro.html

  * igt@prime_nv_pcopy@test2:
    - shard-kbl:          NOTRUN -> [SKIP][125] ([fdo#109271]) +97 similar issues
   [125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-kbl7/igt@prime_nv_pcopy@test2.html

  * igt@sysfs_clients@busy:
    - shard-apl:          NOTRUN -> [SKIP][126] ([fdo#109271] / [i915#2994]) +1 similar issue
   [126]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-apl1/igt@sysfs_clients@busy.html
    - shard-tglb:         NOTRUN -> [SKIP][127] ([i915#2994]) +1 similar issue
   [127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb7/igt@sysfs_clients@busy.html
    - shard-glk:          NOTRUN -> [SKIP][128] ([fdo#109271] / [i915#2994]) +2 similar issues
   [128]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-glk5/igt@sysfs_clients@busy.html
    - shard-iclb:         NOTRUN -> [SKIP][129] ([i915#2994]) +1 similar issue
   [129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb5/igt@sysfs_clients@busy.html
    - shard-kbl:          NOTRUN -> [SKIP][130] ([fdo#109271] / [i915#2994]) +1 similar issue
   [130]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-kbl4/igt@sysfs_clients@busy.html

  
#### Possible fixes ####

  * igt@fbdev@unaligned-read:
    - {shard-rkl}:        [SKIP][131] ([i915#2582]) -> [PASS][132]
   [131]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-2/igt@fbdev@unaligned-read.html
   [132]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-6/igt@fbdev@unaligned-read.html

  * igt@gem_ctx_exec@basic-nohangcheck:
    - {shard-tglu}:       [FAIL][133] ([i915#6268]) -> [PASS][134]
   [133]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-tglu-5/igt@gem_ctx_exec@basic-nohangcheck.html
   [134]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglu-5/igt@gem_ctx_exec@basic-nohangcheck.html

  * igt@gem_ctx_persistence@hostile:
    - {shard-rkl}:        [FAIL][135] ([i915#2410]) -> [PASS][136]
   [135]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-2/igt@gem_ctx_persistence@hostile.html
   [136]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-5/igt@gem_ctx_persistence@hostile.html

  * igt@gem_ctx_persistence@legacy-engines-hang@blt:
    - {shard-rkl}:        [SKIP][137] ([i915#6252]) -> [PASS][138]
   [137]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-5/igt@gem_ctx_persistence@legacy-engines-hang@blt.html
   [138]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-6/igt@gem_ctx_persistence@legacy-engines-hang@blt.html

  * igt@gem_eio@unwedge-stress:
    - {shard-rkl}:        [TIMEOUT][139] ([i915#3063]) -> [PASS][140]
   [139]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-6/igt@gem_eio@unwedge-stress.html
   [140]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-5/igt@gem_eio@unwedge-stress.html

  * igt@gem_exec_endless@dispatch@vcs0:
    - shard-tglb:         [INCOMPLETE][141] ([i915#3778]) -> [PASS][142]
   [141]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-tglb2/igt@gem_exec_endless@dispatch@vcs0.html
   [142]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb6/igt@gem_exec_endless@dispatch@vcs0.html

  * igt@gem_exec_fair@basic-none-share@rcs0:
    - {shard-tglu}:       [FAIL][143] ([i915#2842]) -> [PASS][144]
   [143]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-tglu-3/igt@gem_exec_fair@basic-none-share@rcs0.html
   [144]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglu-6/igt@gem_exec_fair@basic-none-share@rcs0.html

  * igt@gem_exec_fair@basic-none-solo@rcs0:
    - shard-apl:          [FAIL][145] ([i915#2842]) -> [PASS][146]
   [145]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-apl8/igt@gem_exec_fair@basic-none-solo@rcs0.html
   [146]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-apl1/igt@gem_exec_fair@basic-none-solo@rcs0.html

  * igt@gem_exec_fair@basic-pace-solo@rcs0:
    - shard-kbl:          [FAIL][147] ([i915#2842]) -> [PASS][148] +1 similar issue
   [147]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-kbl6/igt@gem_exec_fair@basic-pace-solo@rcs0.html
   [148]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-kbl1/igt@gem_exec_fair@basic-pace-solo@rcs0.html

  * igt@gem_exec_fair@basic-pace@vcs0:
    - shard-glk:          [FAIL][149] ([i915#2842]) -> [PASS][150] +1 similar issue
   [149]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-glk2/igt@gem_exec_fair@basic-pace@vcs0.html
   [150]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-glk5/igt@gem_exec_fair@basic-pace@vcs0.html

  * igt@gem_exec_reloc@basic-range-active:
    - {shard-rkl}:        [SKIP][151] ([i915#3281]) -> [PASS][152] +6 similar issues
   [151]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-1/igt@gem_exec_reloc@basic-range-active.html
   [152]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-5/igt@gem_exec_reloc@basic-range-active.html

  * igt@gem_mmap_gtt@coherency:
    - {shard-rkl}:        [SKIP][153] ([fdo#111656]) -> [PASS][154]
   [153]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-2/igt@gem_mmap_gtt@coherency.html
   [154]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-5/igt@gem_mmap_gtt@coherency.html

  * igt@gem_partial_pwrite_pread@reads-uncached:
    - {shard-rkl}:        [SKIP][155] ([i915#3282]) -> [PASS][156] +4 similar issues
   [155]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-2/igt@gem_partial_pwrite_pread@reads-uncached.html
   [156]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-5/igt@gem_partial_pwrite_pread@reads-uncached.html

  * igt@gen9_exec_parse@allowed-single:
    - shard-kbl:          [DMESG-WARN][157] ([i915#5566] / [i915#716]) -> [PASS][158]
   [157]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-kbl3/igt@gen9_exec_parse@allowed-single.html
   [158]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-kbl1/igt@gen9_exec_parse@allowed-single.html
    - shard-glk:          [DMESG-WARN][159] ([i915#5566] / [i915#716]) -> [PASS][160]
   [159]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-glk9/igt@gen9_exec_parse@allowed-single.html
   [160]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-glk2/igt@gen9_exec_parse@allowed-single.html

  * igt@gen9_exec_parse@batch-without-end:
    - {shard-rkl}:        [SKIP][161] ([i915#2527]) -> [PASS][162] +2 similar issues
   [161]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-2/igt@gen9_exec_parse@batch-without-end.html
   [162]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-5/igt@gen9_exec_parse@batch-without-end.html

  * igt@i915_pm_dc@dc6-dpms:
    - {shard-rkl}:        [SKIP][163] ([i915#3361]) -> [PASS][164]
   [163]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-5/igt@i915_pm_dc@dc6-dpms.html
   [164]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-2/igt@i915_pm_dc@dc6-dpms.html

  * igt@i915_pm_rpm@drm-resources-equal:
    - {shard-rkl}:        [SKIP][165] ([fdo#109308]) -> [PASS][166]
   [165]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-1/igt@i915_pm_rpm@drm-resources-equal.html
   [166]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-6/igt@i915_pm_rpm@drm-resources-equal.html

  * igt@i915_pm_rps@min-max-config-idle:
    - {shard-rkl}:        [FAIL][167] ([i915#4016]) -> [PASS][168]
   [167]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-6/igt@i915_pm_rps@min-max-config-idle.html
   [168]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-2/igt@i915_pm_rps@min-max-config-idle.html

  * igt@i915_selftest@live@gt_heartbeat:
    - shard-tglb:         [INCOMPLETE][169] -> [PASS][170] +1 similar issue
   [169]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-tglb2/igt@i915_selftest@live@gt_heartbeat.html
   [170]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-tglb2/igt@i915_selftest@live@gt_heartbeat.html

  * igt@kms_big_fb@y-tiled-addfb-size-overflow:
    - {shard-rkl}:        [SKIP][171] ([i915#1845] / [i915#4098]) -> [PASS][172] +17 similar issues
   [171]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-5/igt@kms_big_fb@y-tiled-addfb-size-overflow.html
   [172]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-6/igt@kms_big_fb@y-tiled-addfb-size-overflow.html

  * igt@kms_color@pipe-b-ctm-red-to-blue:
    - {shard-rkl}:        [SKIP][173] ([i915#1149] / [i915#1849] / [i915#4070] / [i915#4098]) -> [PASS][174]
   [173]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-1/igt@kms_color@pipe-b-ctm-red-to-blue.html
   [174]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-6/igt@kms_color@pipe-b-ctm-red-to-blue.html

  * igt@kms_cursor_legacy@flip-vs-cursor@toggle:
    - shard-iclb:         [FAIL][175] -> [PASS][176] +2 similar issues
   [175]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-iclb7/igt@kms_cursor_legacy@flip-vs-cursor@toggle.html
   [176]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb6/igt@kms_cursor_legacy@flip-vs-cursor@toggle.html

  * igt@kms_draw_crc@draw-method-rgb565-mmap-gtt-xtiled:
    - {shard-rkl}:        [SKIP][177] ([fdo#111314] / [i915#4098] / [i915#4369]) -> [PASS][178] +4 similar issues
   [177]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-2/igt@kms_draw_crc@draw-method-rgb565-mmap-gtt-xtiled.html
   [178]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-6/igt@kms_draw_crc@draw-method-rgb565-mmap-gtt-xtiled.html

  * igt@kms_draw_crc@draw-method-rgb565-pwrite-untiled:
    - shard-glk:          [FAIL][179] ([i915#1888] / [i915#5160]) -> [PASS][180]
   [179]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-glk7/igt@kms_draw_crc@draw-method-rgb565-pwrite-untiled.html
   [180]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-glk6/igt@kms_draw_crc@draw-method-rgb565-pwrite-untiled.html

  * igt@kms_fbcon_fbt@psr:
    - {shard-rkl}:        [SKIP][181] ([fdo#110189] / [i915#3955]) -> [PASS][182]
   [181]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-5/igt@kms_fbcon_fbt@psr.html
   [182]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-6/igt@kms_fbcon_fbt@psr.html

  * igt@kms_flip@flip-vs-suspend-interruptible@b-dp1:
    - shard-apl:          [DMESG-WARN][183] ([i915#180]) -> [PASS][184] +2 similar issues
   [183]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-apl8/igt@kms_flip@flip-vs-suspend-interruptible@b-dp1.html
   [184]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-apl8/igt@kms_flip@flip-vs-suspend-interruptible@b-dp1.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-upscaling:
    - shard-glk:          [FAIL][185] ([i915#4911]) -> [PASS][186]
   [185]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-glk8/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-upscaling.html
   [186]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-glk5/igt@kms_flip_scaled_crc@flip-32bpp-ytileccs-to-64bpp-ytile-upscaling.html

  * igt@kms_frontbuffer_tracking@fbc-badstride:
    - {shard-rkl}:        [SKIP][187] ([i915#1849] / [i915#4098]) -> [PASS][188] +16 similar issues
   [187]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-2/igt@kms_frontbuffer_tracking@fbc-badstride.html
   [188]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-6/igt@kms_frontbuffer_tracking@fbc-badstride.html

  * igt@kms_frontbuffer_tracking@fbc-suspend:
    - {shard-dg1}:        [SKIP][189] ([i915#5721]) -> [PASS][190]
   [189]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-dg1-15/igt@kms_frontbuffer_tracking@fbc-suspend.html
   [190]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-dg1-12/igt@kms_frontbuffer_tracking@fbc-suspend.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-pwrite:
    - shard-iclb:         [FAIL][191] ([i915#1888] / [i915#2546]) -> [PASS][192]
   [191]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-iclb1/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-pwrite.html
   [192]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb8/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-pwrite.html

  * igt@kms_hdr@bpc-switch-dpms@pipe-a-dp-1:
    - shard-kbl:          [FAIL][193] ([i915#1188]) -> [PASS][194] +1 similar issue
   [193]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-kbl4/igt@kms_hdr@bpc-switch-dpms@pipe-a-dp-1.html
   [194]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-kbl3/igt@kms_hdr@bpc-switch-dpms@pipe-a-dp-1.html

  * igt@kms_invalid_mode@bad-vsync-end:
    - {shard-rkl}:        [SKIP][195] ([i915#4278]) -> [PASS][196]
   [195]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-2/igt@kms_invalid_mode@bad-vsync-end.html
   [196]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-6/igt@kms_invalid_mode@bad-vsync-end.html

  * igt@kms_plane_cursor@pipe-d-viewport-size-128:
    - {shard-dg1}:        [SKIP][197] ([i915#1836]) -> [PASS][198]
   [197]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-dg1-15/igt@kms_plane_cursor@pipe-d-viewport-size-128.html
   [198]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-dg1-19/igt@kms_plane_cursor@pipe-d-viewport-size-128.html

  * igt@kms_plane_multiple@atomic-pipe-a-tiling-x:
    - {shard-rkl}:        [SKIP][199] ([i915#1849] / [i915#3558] / [i915#4070]) -> [PASS][200]
   [199]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-2/igt@kms_plane_multiple@atomic-pipe-a-tiling-x.html
   [200]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-6/igt@kms_plane_multiple@atomic-pipe-a-tiling-x.html

  * igt@kms_properties@get_properties-sanity-atomic:
    - {shard-dg1}:        [FAIL][201] -> [PASS][202] +1 similar issue
   [201]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-dg1-15/igt@kms_properties@get_properties-sanity-atomic.html
   [202]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-dg1-15/igt@kms_properties@get_properties-sanity-atomic.html

  * igt@kms_psr@dpms:
    - {shard-rkl}:        [SKIP][203] ([i915#1072]) -> [PASS][204] +2 similar issues
   [203]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-2/igt@kms_psr@dpms.html
   [204]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-6/igt@kms_psr@dpms.html

  * igt@kms_psr@psr2_primary_blt:
    - shard-iclb:         [SKIP][205] ([fdo#109441]) -> [PASS][206] +1 similar issue
   [205]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-iclb7/igt@kms_psr@psr2_primary_blt.html
   [206]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb2/igt@kms_psr@psr2_primary_blt.html

  * igt@kms_vblank@pipe-c-wait-forked-busy-hang:
    - {shard-dg1}:        [FAIL][207] ([i915#4241]) -> [PASS][208] +1 similar issue
   [207]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-dg1-15/igt@kms_vblank@pipe-c-wait-forked-busy-hang.html
   [208]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-dg1-13/igt@kms_vblank@pipe-c-wait-forked-busy-hang.html

  * igt@perf@gen12-oa-tlb-invalidate:
    - {shard-rkl}:        [SKIP][209] ([fdo#109289]) -> [PASS][210]
   [209]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-rkl-5/igt@perf@gen12-oa-tlb-invalidate.html
   [210]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-rkl-2/igt@perf@gen12-oa-tlb-invalidate.html

  * igt@perf@stress-open-close:
    - shard-apl:          [INCOMPLETE][211] ([i915#5213]) -> [PASS][212]
   [211]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-apl2/igt@perf@stress-open-close.html
   [212]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-apl1/igt@perf@stress-open-close.html

  
#### Warnings ####

  * igt@gem_exec_balancer@parallel-ordering:
    - shard-iclb:         [SKIP][213] ([i915#4525]) -> [FAIL][214] ([i915#6117])
   [213]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-iclb8/igt@gem_exec_balancer@parallel-ordering.html
   [214]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb2/igt@gem_exec_balancer@parallel-ordering.html

  * igt@gem_exec_fair@basic-none-rrul@rcs0:
    - shard-iclb:         [FAIL][215] ([i915#2852]) -> [FAIL][216] ([i915#2842])
   [215]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-iclb2/igt@gem_exec_fair@basic-none-rrul@rcs0.html
   [216]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb8/igt@gem_exec_fair@basic-none-rrul@rcs0.html

  * igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-fully-sf:
    - shard-iclb:         [SKIP][217] ([i915#658]) -> [SKIP][218] ([i915#2920])
   [217]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-iclb5/igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-fully-sf.html
   [218]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb2/igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-fully-sf.html

  * igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf:
    - shard-iclb:         [SKIP][219] ([i915#2920]) -> [SKIP][220] ([i915#658])
   [219]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-iclb2/igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf.html
   [220]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb5/igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf.html

  * igt@kms_psr2_sf@overlay-plane-update-continuous-sf:
    - shard-iclb:         [SKIP][221] ([fdo#111068] / [i915#658]) -> [SKIP][222] ([i915#2920])
   [221]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-iclb3/igt@kms_psr2_sf@overlay-plane-update-continuous-sf.html
   [222]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb2/igt@kms_psr2_sf@overlay-plane-update-continuous-sf.html

  * igt@kms_psr2_sf@primary-plane-update-sf-dmg-area:
    - shard-iclb:         [SKIP][223] ([i915#2920]) -> [SKIP][224] ([fdo#111068] / [i915#658])
   [223]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-iclb2/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area.html
   [224]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-iclb5/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area.html

  * igt@runner@aborted:
    - shard-apl:          ([FAIL][225], [FAIL][226], [FAIL][227], [FAIL][228], [FAIL][229], [FAIL][230]) ([fdo#109271] / [i915#180] / [i915#3002] / [i915#4312] / [i915#5257]) -> ([FAIL][231], [FAIL][232], [FAIL][233]) ([i915#180] / [i915#3002] / [i915#4312] / [i915#5257])
   [225]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-apl7/igt@runner@aborted.html
   [226]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-apl4/igt@runner@aborted.html
   [227]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-apl4/igt@runner@aborted.html
   [228]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-apl8/igt@runner@aborted.html
   [229]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-apl3/igt@runner@aborted.html
   [230]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-apl2/igt@runner@aborted.html
   [231]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-apl7/igt@runner@aborted.html
   [232]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-apl1/igt@runner@aborted.html
   [233]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-apl8/igt@runner@aborted.html
    - shard-kbl:          ([FAIL][234], [FAIL][235], [FAIL][236]) ([fdo#109271] / [i915#3002] / [i915#4312] / [i915#5257] / [i915#716]) -> ([FAIL][237], [FAIL][238]) ([i915#3002] / [i915#4312] / [i915#5257])
   [234]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-kbl3/igt@runner@aborted.html
   [235]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-kbl4/igt@runner@aborted.html
   [236]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_11819/shard-kbl4/igt@runner@aborted.html
   [237]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-kbl6/igt@runner@aborted.html
   [238]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/shard-kbl4/igt@runner@aborted.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [IGT#2]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/issues/2
  [fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
  [fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
  [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
  [fdo#109283]: https://bugs.freedesktop.org/show_bug.cgi?id=109283
  [fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
  [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
  [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
  [fdo#109291]: https://bugs.freedesktop.org/show_bug.cgi?id=109291
  [fdo#109293]: https://bugs.freedesktop.org/show_bug.cgi?id=109293
  [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
  [fdo#109300]: https://bugs.freedesktop.org/show_bug.cgi?id=109300
  [fdo#109302]: https://bugs.freedesktop.org/show_bug.cgi?id=109302
  [fdo#109308]: https://bugs.freedesktop.org/show_bug.cgi?id=109308
  [fdo#109309]: https://bugs.freedesktop.org/show_bug.cgi?id=109309
  [fdo#109312]: https://bugs.freedesktop.org/show_bug.cgi?id=109312
  [fdo#109313]: https://bugs.freedesktop.org/show_bug.cgi?id=109313
  [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
  [fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506
  [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
  [fdo#110542]: https://bugs.freedesktop.org/show_bug.cgi?id=110542
  [fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
  [fdo#110892]: https://bugs.freedesktop.org/show_bug.cgi?id=110892
  [fdo#111066]: https://bugs.freedesktop.org/show_bug.cgi?id=111066
  [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
  [fdo#111314]: https://bugs.freedesktop.org/show_bug.cgi?id=111314
  [fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
  [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
  [fdo#111644]: https://bugs.freedesktop.org/show_bug.cgi?id=111644
  [fdo#111656]: https://bugs.freedesktop.org/show_bug.cgi?id=111656
  [fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [fdo#112283]: https://bugs.freedesktop.org/show_bug.cgi?id=112283
  [i915#1063]: https://gitlab.freedesktop.org/drm/intel/issues/1063
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099
  [i915#1149]: https://gitlab.freedesktop.org/drm/intel/issues/1149
  [i915#1155]: https://gitlab.freedesktop.org/drm/intel/issues/1155
  [i915#1188]: https://gitlab.freedesktop.org/drm/intel/issues/1188
  [i915#1319]: https://gitlab.freedesktop.org/drm/intel/issues/1319
  [i915#132]: https://gitlab.freedesktop.org/drm/intel/issues/132
  [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
  [i915#1769]: https://gitlab.freedesktop.org/drm/intel/issues/1769
  [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
  [i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
  [i915#1836]: https://gitlab.freedesktop.org/drm/intel/issues/1836
  [i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
  [i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
  [i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849
  [i915#1850]: https://gitlab.freedesktop.org/drm/intel/issues/1850
  [i915#1888]: https://gitlab.freedesktop.org/drm/intel/issues/1888
  [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
  [i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
  [i915#2410]: https://gitlab.freedesktop.org/drm/intel/issues/2410
  [i915#2411]: https://gitlab.freedesktop.org/drm/intel/issues/2411
  [i915#2433]: https://gitlab.freedesktop.org/drm/intel/issues/2433
  [i915#2435]: https://gitlab.freedesktop.org/drm/intel/issues/2435
  [i915#2436]: https://gitlab.freedesktop.org/drm/intel/issues/2436
  [i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437
  [i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
  [i915#2530]: https://gitlab.freedesktop.org/drm/intel/issues/2530
  [i915#2546]: https://gitlab.freedesktop.org/drm/intel/issues/2546
  [i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
  [i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
  [i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265
  [i915#2658]: https://gitlab.freedesktop.org/drm/intel/issues/2658
  [i915#2705]: https://gitlab.freedesktop.org/drm/intel/issues/2705
  [i915#280]: https://gitlab.freedesktop.org/drm/intel/issues/280
  [i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
  [i915#2852]: https://gitlab.freedesktop.org/drm/intel/issues/2852
  [i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
  [i915#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920
  [i915#2994]: https://gitlab.freedesktop.org/drm/intel/issues/2994
  [i915#3002]: https://gitlab.freedesktop.org/drm/intel/issues/3002
  [i915#3012]: https://gitlab.freedesktop.org/drm/intel/issues/3012
  [i915#3063]: https://gitlab.freedesktop.org/drm/intel/issues/3063
  [i915#3116]: https://gitlab.freedesktop.org/drm/intel/issues/3116
  [i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
  [i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
  [i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
  [i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
  [i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299
  [i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
  [i915#3361]: https://gitlab.freedesktop.org/drm/intel/issues/3361
  [i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
  [i915#3467]: https://gitlab.freedesktop.org/drm/intel/issues/3467
  [i915#3469]: https://gitlab.freedesktop.org/drm/intel/issues/3469
  [i915#3528]: https://gitlab.freedesktop.org/drm/intel/issues/3528
  [i915#3536]: https://gitlab.freedesktop.org/drm/intel/issues/3536
  [i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3558]: https://gitlab.freedesktop.org/drm/intel/issues/3558
  [i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637
  [i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638
  [i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689
  [i915#3701]: https://gitlab.freedesktop.org/drm/intel/issues/3701
  [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
  [i915#3734]: https://gitlab.freedesktop.org/drm/intel/issues/3734
  [i915#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742
  [i915#3778]: https://gitlab.freedesktop.org/drm/intel/issues/3778
  [i915#3825]: https://gitlab.freedesktop.org/drm/intel/issues/3825
  [i915#3826]: https://gitlab.freedesktop.org/drm/intel/issues/3826
  [i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
  [i915#3938]: https://gitlab.freedesktop.org/drm/intel/issues/3938
  [i915#3955]: https://gitlab.freedesktop.org/drm/intel/issues/3955
  [i915#3963]: https://gitlab.freedesktop.org/drm/intel/issues/3963
  [i915#3987]: https://gitlab.freedesktop.org/drm/intel/issues/3987
  [i915#4016]: https://gitlab.freedesktop.org/drm/intel/issues/4016
  [i915#4032]: https://gitlab.freedesktop.org/drm/intel/issues/4032
  [i915#4036]: https://gitlab.freedesktop.org/drm/intel/issues/4036
  [i915#404]: https://gitlab.freedesktop.org/drm/intel/issues/404
  [i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
  [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
  [i915#4078]: https://gitlab.freedesktop.org/drm/intel/issues/4078
  [i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
  [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
  [i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
  [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
  [i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213
  [i915#4215]: https://gitlab.freedesktop.org/drm/intel/issues/4215
  [i915#4241]: https://gitlab.freedesktop.org/drm/intel/issues/4241
  [i915#426]: https://gitlab.freedesktop.org/drm/intel/issues/426
  [i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
  [i915#4278]: https://gitlab.freedesktop.org/drm/intel/issues/4278
  [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
  [i915#4369]: https://gitlab.freedesktop.org/drm/intel/issues/4369
  [i915#4391]: https://gitlab.freedesktop.org/drm/intel/issues/4391
  [i915#4462]: https://gitlab.freedesktop.org/drm/intel/issues/4462
  [i915#4525]: https://gitlab.freedesktop.org/drm/intel/issues/4525
  [i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
  [i915#4565]: https://gitlab.freedesktop.org/drm/intel/issues/4565
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4771]: https://gitlab.freedesktop.org/drm/intel/issues/4771
  [i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812
  [i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833
  [i915#4842]: https://gitlab.freedesktop.org/drm/intel/issues/4842
  [i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
  [i915#4853]: https://gitlab.freedesktop.org/drm/intel/issues/4853
  [i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860
  [i915#4883]: https://gitlab.freedesktop.org/drm/intel/issues/4883
  [i915#4884]: https://gitlab.freedesktop.org/drm/intel/issues/4884
  [i915#4893]: https://gitlab.freedesktop.org/drm/intel/issues/4893
  [i915#4911]: https://gitlab.freedesktop.org/drm/intel/issues/4911
  [i915#4936]: https://gitlab.freedesktop.org/drm/intel/issues/4936
  [i915#5030]: https://gitlab.freedesktop.org/drm/intel/issues/5030
  [i915#5160]: https://gitlab.freedesktop.org/drm/intel/issues/5160
  [i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
  [i915#5182]: https://gitlab.freedesktop.org/drm/intel/issues/5182
  [i915#5213]: https://gitlab.freedesktop.org/drm/intel/issues/5213
  [i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
  [i915#5257]: https://gitlab.freedesktop.org/drm/intel/issues/5257
  [i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
  [i915#5287]: https://gitlab.freedesktop.org/drm/intel/issues/5287
  [i915#5288]: https://gitlab.freedesktop.org/drm/intel/issues/5288
  [i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
  [i915#5325]: https://gitlab.freedesktop.org/drm/intel/issues/5325
  [i915#5327]: https://gitlab.freedesktop.org/drm/intel/issues/5327
  [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
  [i915#5439]: https://gitlab.freedesktop.org/drm/intel/issues/5439
  [i915#5461]: https://gitlab.freedesktop.org/drm/intel/issues/5461
  [i915#5507]: https://gitlab.freedesktop.org/drm/intel/issues/5507
  [i915#5563]: https://gitlab.freedesktop.org/drm/intel/issues/5563
  [i915#5566]: https://gitlab.freedesktop.org/drm/intel/issues/5566
  [i915#5721]: https://gitlab.freedesktop.org/drm/intel/issues/5721
  [i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784
  [i915#6076]: https://gitlab.freedesktop.org/drm/intel/issues/6076
  [i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
  [i915#6117]: https://gitlab.freedesktop.org/drm/intel/issues/6117
  [i915#6140]: https://gitlab.freedesktop.org/drm/intel/issues/6140
  [i915#6141]: https://gitlab.freedesktop.org/drm/intel/issues/6141
  [i915#6201]: https://gitlab.freedesktop.org/drm/intel/issues/6201
  [i915#6227]: https://gitlab.freedesktop.org/drm/intel/issues/6227
  [i915#6245]: https://gitlab.freedesktop.org/drm/intel/issues/6245
  [i915#6248]: https://gitlab.freedesktop.org/drm/intel/issues/6248
  [i915#6251]: https://gitlab.freedesktop.org/drm/intel/issues/6251
  [i915#6252]: https://gitlab.freedesktop.org/drm/intel/issues/6252
  [i915#6258]: https://gitlab.freedesktop.org/drm/intel/issues/6258
  [i915#6268]: https://gitlab.freedesktop.org/drm/intel/issues/6268
  [i915#6301]: https://gitlab.freedesktop.org/drm/intel/issues/6301
  [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
  [i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716
  [i915#768]: https://gitlab.freedesktop.org/drm/intel/issues/768
  [i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79


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

  * CI: CI-20190529 -> None
  * IGT: IGT_6546 -> IGTPW_7419
  * Piglit: piglit_4509 -> None

  CI-20190529: 20190529
  CI_DRM_11819: 53a93d1cb8af6ac85c8e1be9ddd7936aca4ca100 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_7419: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/index.html
  IGT_6546: e3d52c91a9730f7a1f74f375b6a6ac6085a36172 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7419/index.html

[-- Attachment #2: Type: text/html, Size: 69519 bytes --]

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

* [igt-dev] ✓ Fi.CI.BAT: success for tests/i915/kms_big_fb: trigger async flip with a dummy flip (rev2)
  2022-06-28 11:04 ` [igt-dev] " Arun R Murthy
                   ` (3 preceding siblings ...)
  (?)
@ 2022-07-04  8:29 ` Patchwork
  -1 siblings, 0 replies; 22+ messages in thread
From: Patchwork @ 2022-07-04  8:29 UTC (permalink / raw)
  To: Arun R Murthy; +Cc: igt-dev

[-- Attachment #1: Type: text/plain, Size: 7070 bytes --]

== Series Details ==

Series: tests/i915/kms_big_fb: trigger async flip with a dummy flip (rev2)
URL   : https://patchwork.freedesktop.org/series/105726/
State : success

== Summary ==

CI Bug Log - changes from IGT_6555 -> IGTPW_7455
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/index.html

Participating hosts (42 -> 43)
------------------------------

  Additional (1): bat-dg2-8 

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

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_render_tiled_blits@basic:
    - fi-apl-guc:         [PASS][1] -> [INCOMPLETE][2] ([i915#6274])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/fi-apl-guc/igt@gem_render_tiled_blits@basic.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/fi-apl-guc/igt@gem_render_tiled_blits@basic.html

  * igt@i915_pm_rpm@module-reload:
    - bat-adlp-4:         [PASS][3] -> [DMESG-WARN][4] ([i915#3576])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/bat-adlp-4/igt@i915_pm_rpm@module-reload.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/bat-adlp-4/igt@i915_pm_rpm@module-reload.html

  * igt@i915_selftest@live@gem:
    - fi-blb-e6850:       NOTRUN -> [DMESG-FAIL][5] ([i915#4528])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/fi-blb-e6850/igt@i915_selftest@live@gem.html

  * igt@i915_selftest@live@memory_region:
    - fi-bdw-5557u:       [PASS][6] -> [INCOMPLETE][7] ([i915#6208])
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/fi-bdw-5557u/igt@i915_selftest@live@memory_region.html
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/fi-bdw-5557u/igt@i915_selftest@live@memory_region.html

  * igt@i915_suspend@basic-s3-without-i915:
    - fi-rkl-11600:       [PASS][8] -> [INCOMPLETE][9] ([i915#5982])
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/fi-rkl-11600/igt@i915_suspend@basic-s3-without-i915.html
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/fi-rkl-11600/igt@i915_suspend@basic-s3-without-i915.html

  
#### Possible fixes ####

  * igt@i915_selftest@live@coherency:
    - {bat-dg2-9}:        [DMESG-WARN][10] ([i915#5763]) -> [PASS][11] +13 similar issues
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/bat-dg2-9/igt@i915_selftest@live@coherency.html
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/bat-dg2-9/igt@i915_selftest@live@coherency.html

  * igt@i915_selftest@live@gtt:
    - fi-bdw-5557u:       [DMESG-FAIL][12] ([i915#3674]) -> [PASS][13]
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/fi-bdw-5557u/igt@i915_selftest@live@gtt.html
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/fi-bdw-5557u/igt@i915_selftest@live@gtt.html

  * igt@i915_selftest@live@requests:
    - fi-blb-e6850:       [DMESG-FAIL][14] ([i915#4528]) -> [PASS][15]
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/fi-blb-e6850/igt@i915_selftest@live@requests.html
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/fi-blb-e6850/igt@i915_selftest@live@requests.html

  * igt@kms_busy@basic@flip:
    - bat-adlp-4:         [DMESG-WARN][16] ([i915#3576]) -> [PASS][17] +3 similar issues
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/bat-adlp-4/igt@kms_busy@basic@flip.html
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/bat-adlp-4/igt@kms_busy@basic@flip.html

  * igt@kms_flip@basic-flip-vs-dpms@a-edp1:
    - fi-tgl-u2:          [DMESG-WARN][18] ([i915#402]) -> [PASS][19]
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/fi-tgl-u2/igt@kms_flip@basic-flip-vs-dpms@a-edp1.html
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/fi-tgl-u2/igt@kms_flip@basic-flip-vs-dpms@a-edp1.html

  * igt@kms_flip@basic-flip-vs-modeset@b-edp1:
    - {bat-adlp-6}:       [DMESG-WARN][20] ([i915#3576]) -> [PASS][21] +1 similar issue
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/bat-adlp-6/igt@kms_flip@basic-flip-vs-modeset@b-edp1.html
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/bat-adlp-6/igt@kms_flip@basic-flip-vs-modeset@b-edp1.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1155]: https://gitlab.freedesktop.org/drm/intel/issues/1155
  [i915#1982]: https://gitlab.freedesktop.org/drm/intel/issues/1982
  [i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
  [i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3576]: https://gitlab.freedesktop.org/drm/intel/issues/3576
  [i915#3595]: https://gitlab.freedesktop.org/drm/intel/issues/3595
  [i915#3674]: https://gitlab.freedesktop.org/drm/intel/issues/3674
  [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
  [i915#402]: https://gitlab.freedesktop.org/drm/intel/issues/402
  [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
  [i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
  [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
  [i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
  [i915#4215]: https://gitlab.freedesktop.org/drm/intel/issues/4215
  [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
  [i915#4528]: https://gitlab.freedesktop.org/drm/intel/issues/4528
  [i915#4579]: https://gitlab.freedesktop.org/drm/intel/issues/4579
  [i915#4873]: https://gitlab.freedesktop.org/drm/intel/issues/4873
  [i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
  [i915#5174]: https://gitlab.freedesktop.org/drm/intel/issues/5174
  [i915#5190]: https://gitlab.freedesktop.org/drm/intel/issues/5190
  [i915#5274]: https://gitlab.freedesktop.org/drm/intel/issues/5274
  [i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354
  [i915#5763]: https://gitlab.freedesktop.org/drm/intel/issues/5763
  [i915#5903]: https://gitlab.freedesktop.org/drm/intel/issues/5903
  [i915#5982]: https://gitlab.freedesktop.org/drm/intel/issues/5982
  [i915#6208]: https://gitlab.freedesktop.org/drm/intel/issues/6208
  [i915#6274]: https://gitlab.freedesktop.org/drm/intel/issues/6274


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

  * CI: CI-20190529 -> None
  * IGT: IGT_6555 -> IGTPW_7455

  CI-20190529: 20190529
  CI_DRM_11844: 1521a456fc4a93afd21a1eb38066f22ce3f2e380 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_7455: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/index.html
  IGT_6555: 1a3ffecd400b8f82c35745fa2e07992f6bdeede2 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/index.html

[-- Attachment #2: Type: text/html, Size: 6519 bytes --]

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

* [igt-dev] ✓ Fi.CI.IGT: success for tests/i915/kms_big_fb: trigger async flip with a dummy flip (rev2)
  2022-06-28 11:04 ` [igt-dev] " Arun R Murthy
                   ` (4 preceding siblings ...)
  (?)
@ 2022-07-04 10:18 ` Patchwork
  -1 siblings, 0 replies; 22+ messages in thread
From: Patchwork @ 2022-07-04 10:18 UTC (permalink / raw)
  To: Arun R Murthy; +Cc: igt-dev

[-- Attachment #1: Type: text/plain, Size: 58786 bytes --]

== Series Details ==

Series: tests/i915/kms_big_fb: trigger async flip with a dummy flip (rev2)
URL   : https://patchwork.freedesktop.org/series/105726/
State : success

== Summary ==

CI Bug Log - changes from IGT_6555_full -> IGTPW_7455_full
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

  External URL: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/index.html

Participating hosts (7 -> 10)
------------------------------

  Additional (3): shard-rkl shard-dg1 shard-tglu 

Possible new issues
-------------------

  Here are the unknown changes that may have been introduced in IGTPW_7455_full:

### IGT changes ###

#### Suppressed ####

  The following results come from untrusted machines, tests, or statuses.
  They do not affect the overall result.

  * igt@gem_exec_capture@pi@rcs0:
    - {shard-dg1}:        NOTRUN -> [INCOMPLETE][1]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-dg1-13/igt@gem_exec_capture@pi@rcs0.html

  * igt@kms_color@deep-color:
    - {shard-dg1}:        NOTRUN -> [SKIP][2]
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-dg1-12/igt@kms_color@deep-color.html
    - {shard-tglu}:       NOTRUN -> [SKIP][3]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglu-2/igt@kms_color@deep-color.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling:
    - {shard-rkl}:        NOTRUN -> [SKIP][4] +3 similar issues
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-rkl-1/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-64bpp-ytile-downscaling.html

  * {igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-upscaling@pipe-a-default-mode}:
    - shard-iclb:         NOTRUN -> [SKIP][5]
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb2/igt@kms_flip_scaled_crc@flip-64bpp-yftile-to-32bpp-yftile-upscaling@pipe-a-default-mode.html

  
New tests
---------

  New tests have been introduced between IGT_6555_full and IGTPW_7455_full:

### New IGT tests (19) ###

  * igt@kms_color@ctm-0-25@pipe-b-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.44] s

  * igt@kms_color@ctm-0-25@pipe-d-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.45] s

  * igt@kms_color@ctm-0-50@pipe-b-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.42, 0.43] s

  * igt@kms_color@ctm-0-50@pipe-d-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.44] s

  * igt@kms_color@ctm-blue-to-red@pipe-b-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.23, 0.40] s

  * igt@kms_color@ctm-blue-to-red@pipe-d-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.23, 0.43] s

  * igt@kms_color@ctm-green-to-red@pipe-a-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.45, 0.48] s

  * igt@kms_color@ctm-green-to-red@pipe-b-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.54, 0.59] s

  * igt@kms_color@ctm-green-to-red@pipe-b-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.23, 0.42] s

  * igt@kms_color@ctm-green-to-red@pipe-c-dp-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.54, 0.61] s

  * igt@kms_color@ctm-green-to-red@pipe-d-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.22, 0.43] s

  * igt@kms_color@ctm-red-to-blue:
    - Statuses : 1 skip(s)
    - Exec time: [0.0] s

  * igt@kms_color@ctm-red-to-blue@pipe-b-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.23, 0.42] s

  * igt@kms_color@ctm-red-to-blue@pipe-d-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.22, 0.44] s

  * igt@kms_color@degamma@pipe-b-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.41, 0.42] s

  * igt@kms_color@degamma@pipe-d-hdmi-a-1:
    - Statuses : 2 pass(s)
    - Exec time: [0.43, 0.44] s

  * igt@kms_color@invalid-gamma-lut-sizes:
    - Statuses :
    - Exec time: [None] s

  * igt@kms_color@legacy-gamma@pipe-b-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.23] s

  * igt@kms_color@legacy-gamma@pipe-d-hdmi-a-1:
    - Statuses : 1 pass(s)
    - Exec time: [0.23] s

  

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

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_create@create-massive:
    - shard-glk:          NOTRUN -> [DMESG-WARN][6] ([i915#4991])
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-glk3/igt@gem_create@create-massive.html

  * igt@gem_ctx_persistence@hostile:
    - shard-snb:          NOTRUN -> [SKIP][7] ([fdo#109271] / [i915#1099])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-snb2/igt@gem_ctx_persistence@hostile.html
    - shard-tglb:         NOTRUN -> [FAIL][8] ([i915#2410])
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb3/igt@gem_ctx_persistence@hostile.html

  * igt@gem_eio@kms:
    - shard-tglb:         [PASS][9] -> [FAIL][10] ([i915#5784])
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-tglb7/igt@gem_eio@kms.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb1/igt@gem_eio@kms.html

  * igt@gem_exec_balancer@parallel-bb-first:
    - shard-iclb:         [PASS][11] -> [SKIP][12] ([i915#4525])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-iclb1/igt@gem_exec_balancer@parallel-bb-first.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb7/igt@gem_exec_balancer@parallel-bb-first.html

  * igt@gem_exec_fair@basic-deadline:
    - shard-iclb:         NOTRUN -> [FAIL][13] ([i915#6141])
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb7/igt@gem_exec_fair@basic-deadline.html

  * igt@gem_exec_fair@basic-none-share@rcs0:
    - shard-iclb:         [PASS][14] -> [FAIL][15] ([i915#2842])
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-iclb5/igt@gem_exec_fair@basic-none-share@rcs0.html
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb6/igt@gem_exec_fair@basic-none-share@rcs0.html

  * igt@gem_exec_fair@basic-none@vcs0:
    - shard-apl:          [PASS][16] -> [FAIL][17] ([i915#2842]) +1 similar issue
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-apl4/igt@gem_exec_fair@basic-none@vcs0.html
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl4/igt@gem_exec_fair@basic-none@vcs0.html

  * igt@gem_exec_fair@basic-pace-solo@rcs0:
    - shard-kbl:          [PASS][18] -> [FAIL][19] ([i915#2842])
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-kbl7/igt@gem_exec_fair@basic-pace-solo@rcs0.html
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl6/igt@gem_exec_fair@basic-pace-solo@rcs0.html

  * igt@gem_exec_fair@basic-throttle@rcs0:
    - shard-iclb:         [PASS][20] -> [FAIL][21] ([i915#2849])
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-iclb8/igt@gem_exec_fair@basic-throttle@rcs0.html
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb2/igt@gem_exec_fair@basic-throttle@rcs0.html

  * igt@gem_exec_parallel@fds@vecs0:
    - shard-apl:          [PASS][22] -> [INCOMPLETE][23] ([i915#6310])
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-apl8/igt@gem_exec_parallel@fds@vecs0.html
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl8/igt@gem_exec_parallel@fds@vecs0.html

  * igt@gem_exec_schedule@preempt-self@bcs0:
    - shard-glk:          [PASS][24] -> [INCOMPLETE][25] ([i915#6310]) +1 similar issue
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-glk1/igt@gem_exec_schedule@preempt-self@bcs0.html
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-glk8/igt@gem_exec_schedule@preempt-self@bcs0.html

  * igt@gem_exec_whisper@basic-queues:
    - shard-snb:          NOTRUN -> [SKIP][26] ([fdo#109271]) +43 similar issues
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-snb2/igt@gem_exec_whisper@basic-queues.html

  * igt@gem_lmem_swapping@heavy-verify-random:
    - shard-kbl:          NOTRUN -> [SKIP][27] ([fdo#109271] / [i915#4613]) +5 similar issues
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl6/igt@gem_lmem_swapping@heavy-verify-random.html

  * igt@gem_lmem_swapping@heavy-verify-random-ccs:
    - shard-iclb:         NOTRUN -> [SKIP][28] ([i915#4613])
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb6/igt@gem_lmem_swapping@heavy-verify-random-ccs.html

  * igt@gem_lmem_swapping@parallel-random-verify-ccs:
    - shard-apl:          NOTRUN -> [SKIP][29] ([fdo#109271] / [i915#4613]) +1 similar issue
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl1/igt@gem_lmem_swapping@parallel-random-verify-ccs.html

  * igt@gem_pxp@display-protected-crc:
    - shard-tglb:         NOTRUN -> [SKIP][30] ([i915#4270])
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb7/igt@gem_pxp@display-protected-crc.html

  * igt@gem_pxp@verify-pxp-stale-ctx-execution:
    - shard-iclb:         NOTRUN -> [SKIP][31] ([i915#4270]) +1 similar issue
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb6/igt@gem_pxp@verify-pxp-stale-ctx-execution.html

  * igt@gem_softpin@evict-single-offset:
    - shard-apl:          NOTRUN -> [FAIL][32] ([i915#4171])
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl3/igt@gem_softpin@evict-single-offset.html
    - shard-kbl:          NOTRUN -> [FAIL][33] ([i915#4171])
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl4/igt@gem_softpin@evict-single-offset.html

  * igt@gem_softpin@noreloc-s3:
    - shard-kbl:          NOTRUN -> [DMESG-WARN][34] ([i915#180]) +5 similar issues
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl6/igt@gem_softpin@noreloc-s3.html

  * igt@gem_userptr_blits@input-checking:
    - shard-kbl:          NOTRUN -> [DMESG-WARN][35] ([i915#4991])
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl7/igt@gem_userptr_blits@input-checking.html
    - shard-apl:          NOTRUN -> [DMESG-WARN][36] ([i915#4991])
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl7/igt@gem_userptr_blits@input-checking.html

  * igt@gem_userptr_blits@unsync-overlap:
    - shard-iclb:         NOTRUN -> [SKIP][37] ([i915#3297])
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb5/igt@gem_userptr_blits@unsync-overlap.html
    - shard-tglb:         NOTRUN -> [SKIP][38] ([i915#3297])
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb7/igt@gem_userptr_blits@unsync-overlap.html

  * igt@gem_userptr_blits@vma-merge:
    - shard-iclb:         NOTRUN -> [FAIL][39] ([i915#3318])
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb2/igt@gem_userptr_blits@vma-merge.html

  * igt@gen9_exec_parse@allowed-single:
    - shard-kbl:          [PASS][40] -> [DMESG-WARN][41] ([i915#5566] / [i915#716])
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-kbl4/igt@gen9_exec_parse@allowed-single.html
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl4/igt@gen9_exec_parse@allowed-single.html

  * igt@gen9_exec_parse@secure-batches:
    - shard-iclb:         NOTRUN -> [SKIP][42] ([i915#2856]) +1 similar issue
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb8/igt@gen9_exec_parse@secure-batches.html
    - shard-tglb:         NOTRUN -> [SKIP][43] ([i915#2527] / [i915#2856])
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb7/igt@gen9_exec_parse@secure-batches.html

  * igt@i915_pm_rc6_residency@rc6-idle@vecs0:
    - shard-glk:          [PASS][44] -> [DMESG-WARN][45] ([i915#118])
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-glk5/igt@i915_pm_rc6_residency@rc6-idle@vecs0.html
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-glk2/igt@i915_pm_rc6_residency@rc6-idle@vecs0.html

  * igt@i915_pm_rpm@dpms-lpsp:
    - shard-kbl:          NOTRUN -> [SKIP][46] ([fdo#109271]) +234 similar issues
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl7/igt@i915_pm_rpm@dpms-lpsp.html

  * igt@kms_big_fb@4-tiled-8bpp-rotate-180:
    - shard-tglb:         NOTRUN -> [SKIP][47] ([i915#5286])
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb3/igt@kms_big_fb@4-tiled-8bpp-rotate-180.html

  * igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-async-flip:
    - shard-iclb:         NOTRUN -> [SKIP][48] ([i915#5286]) +1 similar issue
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb6/igt@kms_big_fb@4-tiled-max-hw-stride-64bpp-rotate-0-async-flip.html

  * igt@kms_big_fb@yf-tiled-32bpp-rotate-270:
    - shard-tglb:         NOTRUN -> [SKIP][49] ([fdo#111615]) +1 similar issue
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb1/igt@kms_big_fb@yf-tiled-32bpp-rotate-270.html

  * igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0:
    - shard-iclb:         NOTRUN -> [SKIP][50] ([fdo#110723])
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb3/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0.html

  * igt@kms_big_joiner@invalid-modeset:
    - shard-iclb:         NOTRUN -> [SKIP][51] ([i915#2705])
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb1/igt@kms_big_joiner@invalid-modeset.html

  * igt@kms_ccs@pipe-a-crc-sprite-planes-basic-y_tiled_ccs:
    - shard-glk:          [PASS][52] -> [DMESG-FAIL][53] ([i915#118] / [i915#1888])
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-glk8/igt@kms_ccs@pipe-a-crc-sprite-planes-basic-y_tiled_ccs.html
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-glk3/igt@kms_ccs@pipe-a-crc-sprite-planes-basic-y_tiled_ccs.html

  * igt@kms_ccs@pipe-b-bad-rotation-90-y_tiled_gen12_mc_ccs:
    - shard-glk:          NOTRUN -> [SKIP][54] ([fdo#109271] / [i915#3886]) +1 similar issue
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-glk7/igt@kms_ccs@pipe-b-bad-rotation-90-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-c-bad-aux-stride-y_tiled_gen12_rc_ccs_cc:
    - shard-kbl:          NOTRUN -> [SKIP][55] ([fdo#109271] / [i915#3886]) +10 similar issues
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl7/igt@kms_ccs@pipe-c-bad-aux-stride-y_tiled_gen12_rc_ccs_cc.html

  * igt@kms_ccs@pipe-c-crc-primary-basic-4_tiled_dg2_rc_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][56] ([i915#6095])
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb3/igt@kms_ccs@pipe-c-crc-primary-basic-4_tiled_dg2_rc_ccs.html

  * igt@kms_ccs@pipe-c-crc-primary-basic-y_tiled_gen12_mc_ccs:
    - shard-apl:          NOTRUN -> [SKIP][57] ([fdo#109271] / [i915#3886]) +3 similar issues
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl6/igt@kms_ccs@pipe-c-crc-primary-basic-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-c-crc-primary-rotation-180-y_tiled_gen12_mc_ccs:
    - shard-iclb:         NOTRUN -> [SKIP][58] ([fdo#109278] / [i915#3886])
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb1/igt@kms_ccs@pipe-c-crc-primary-rotation-180-y_tiled_gen12_mc_ccs.html
    - shard-tglb:         NOTRUN -> [SKIP][59] ([i915#3689] / [i915#3886])
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb7/igt@kms_ccs@pipe-c-crc-primary-rotation-180-y_tiled_gen12_mc_ccs.html

  * igt@kms_ccs@pipe-d-random-ccs-data-y_tiled_gen12_mc_ccs:
    - shard-tglb:         NOTRUN -> [SKIP][60] ([i915#3689])
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb7/igt@kms_ccs@pipe-d-random-ccs-data-y_tiled_gen12_mc_ccs.html

  * igt@kms_chamelium@hdmi-hpd-storm:
    - shard-apl:          NOTRUN -> [SKIP][61] ([fdo#109271] / [fdo#111827]) +10 similar issues
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl7/igt@kms_chamelium@hdmi-hpd-storm.html

  * {igt@kms_color@ctm-red-to-blue} (NEW):
    - {shard-rkl}:        NOTRUN -> [SKIP][62] ([i915#4098])
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-rkl-2/igt@kms_color@ctm-red-to-blue.html

  * igt@kms_color_chamelium@pipe-a-ctm-limited-range:
    - shard-tglb:         NOTRUN -> [SKIP][63] ([fdo#109284] / [fdo#111827])
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb7/igt@kms_color_chamelium@pipe-a-ctm-limited-range.html
    - shard-snb:          NOTRUN -> [SKIP][64] ([fdo#109271] / [fdo#111827])
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-snb7/igt@kms_color_chamelium@pipe-a-ctm-limited-range.html

  * igt@kms_color_chamelium@pipe-c-ctm-0-5:
    - shard-kbl:          NOTRUN -> [SKIP][65] ([fdo#109271] / [fdo#111827]) +15 similar issues
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl7/igt@kms_color_chamelium@pipe-c-ctm-0-5.html

  * igt@kms_color_chamelium@pipe-c-degamma:
    - shard-iclb:         NOTRUN -> [SKIP][66] ([fdo#109284] / [fdo#111827]) +2 similar issues
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb3/igt@kms_color_chamelium@pipe-c-degamma.html

  * igt@kms_color_chamelium@pipe-d-ctm-0-25:
    - shard-glk:          NOTRUN -> [SKIP][67] ([fdo#109271] / [fdo#111827]) +3 similar issues
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-glk1/igt@kms_color_chamelium@pipe-d-ctm-0-25.html

  * igt@kms_cursor_crc@cursor-offscreen@pipe-b-edp-1-32x32:
    - shard-iclb:         NOTRUN -> [SKIP][68] ([i915#4462]) +5 similar issues
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb5/igt@kms_cursor_crc@cursor-offscreen@pipe-b-edp-1-32x32.html

  * igt@kms_cursor_crc@cursor-offscreen@pipe-c-edp-1-512x170:
    - shard-iclb:         NOTRUN -> [SKIP][69] ([i915#3359]) +5 similar issues
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb5/igt@kms_cursor_crc@cursor-offscreen@pipe-c-edp-1-512x170.html

  * igt@kms_cursor_legacy@basic-busy-flip-before-cursor:
    - shard-tglb:         NOTRUN -> [SKIP][70] ([i915#4103])
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor.html
    - shard-iclb:         NOTRUN -> [SKIP][71] ([i915#4103])
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb2/igt@kms_cursor_legacy@basic-busy-flip-before-cursor.html

  * igt@kms_cursor_legacy@flip-vs-cursor@toggle:
    - shard-iclb:         [PASS][72] -> [FAIL][73] ([i915#2346])
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-iclb8/igt@kms_cursor_legacy@flip-vs-cursor@toggle.html
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb7/igt@kms_cursor_legacy@flip-vs-cursor@toggle.html

  * igt@kms_draw_crc@draw-method-rgb565-pwrite-4tiled:
    - shard-tglb:         NOTRUN -> [SKIP][74] ([i915#5287])
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb5/igt@kms_draw_crc@draw-method-rgb565-pwrite-4tiled.html
    - shard-iclb:         NOTRUN -> [SKIP][75] ([i915#5287])
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb7/igt@kms_draw_crc@draw-method-rgb565-pwrite-4tiled.html

  * igt@kms_flip@2x-wf_vblank-ts-check:
    - shard-iclb:         NOTRUN -> [SKIP][76] ([fdo#109274]) +2 similar issues
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb1/igt@kms_flip@2x-wf_vblank-ts-check.html
    - shard-tglb:         NOTRUN -> [SKIP][77] ([fdo#109274] / [fdo#111825])
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb7/igt@kms_flip@2x-wf_vblank-ts-check.html

  * igt@kms_flip@plain-flip-fb-recreate-interruptible@a-dp1:
    - shard-kbl:          [PASS][78] -> [FAIL][79] ([i915#2122])
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-kbl7/igt@kms_flip@plain-flip-fb-recreate-interruptible@a-dp1.html
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl6/igt@kms_flip@plain-flip-fb-recreate-interruptible@a-dp1.html

  * igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-upscaling@pipe-a-default-mode:
    - shard-iclb:         NOTRUN -> [SKIP][80] ([i915#2672]) +2 similar issues
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb2/igt@kms_flip_scaled_crc@flip-32bpp-yftile-to-64bpp-yftile-upscaling@pipe-a-default-mode.html

  * igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs-downscaling@pipe-a-default-mode:
    - shard-iclb:         NOTRUN -> [SKIP][81] ([i915#2672] / [i915#3555])
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb3/igt@kms_flip_scaled_crc@flip-32bpp-ytile-to-32bpp-ytilegen12rcccs-downscaling@pipe-a-default-mode.html

  * igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-mmap-cpu:
    - shard-tglb:         NOTRUN -> [SKIP][82] ([fdo#109280] / [fdo#111825]) +4 similar issues
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb5/igt@kms_frontbuffer_tracking@fbc-2p-primscrn-cur-indfb-draw-mmap-cpu.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-mmap-gtt:
    - shard-glk:          NOTRUN -> [SKIP][83] ([fdo#109271]) +68 similar issues
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-glk5/igt@kms_frontbuffer_tracking@fbcpsr-1p-offscren-pri-indfb-draw-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-mmap-gtt:
    - shard-iclb:         NOTRUN -> [SKIP][84] ([fdo#109280]) +12 similar issues
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb1/igt@kms_frontbuffer_tracking@fbcpsr-2p-scndscrn-spr-indfb-draw-mmap-gtt.html

  * igt@kms_frontbuffer_tracking@fbcpsr-indfb-scaledprimary:
    - shard-apl:          NOTRUN -> [SKIP][85] ([fdo#109271]) +133 similar issues
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl4/igt@kms_frontbuffer_tracking@fbcpsr-indfb-scaledprimary.html

  * igt@kms_hdmi_inject@inject-audio:
    - shard-tglb:         [PASS][86] -> [SKIP][87] ([i915#433])
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-tglb3/igt@kms_hdmi_inject@inject-audio.html
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb5/igt@kms_hdmi_inject@inject-audio.html

  * igt@kms_hdr@bpc-switch-suspend:
    - shard-tglb:         NOTRUN -> [SKIP][88] ([i915#3555]) +1 similar issue
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb7/igt@kms_hdr@bpc-switch-suspend.html

  * igt@kms_hdr@bpc-switch-suspend@pipe-a-dp-1:
    - shard-kbl:          NOTRUN -> [DMESG-FAIL][89] ([i915#180])
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl4/igt@kms_hdr@bpc-switch-suspend@pipe-a-dp-1.html

  * igt@kms_hdr@static-toggle-suspend:
    - shard-iclb:         NOTRUN -> [SKIP][90] ([i915#3555]) +3 similar issues
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb6/igt@kms_hdr@static-toggle-suspend.html

  * igt@kms_pipe_b_c_ivb@pipe-b-double-modeset-then-modeset-pipe-c:
    - shard-iclb:         NOTRUN -> [SKIP][91] ([fdo#109289])
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb6/igt@kms_pipe_b_c_ivb@pipe-b-double-modeset-then-modeset-pipe-c.html

  * igt@kms_plane@plane-panning-bottom-right-suspend@pipe-a-planes:
    - shard-apl:          [PASS][92] -> [DMESG-WARN][93] ([i915#180]) +1 similar issue
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-apl1/igt@kms_plane@plane-panning-bottom-right-suspend@pipe-a-planes.html
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl8/igt@kms_plane@plane-panning-bottom-right-suspend@pipe-a-planes.html

  * igt@kms_plane_alpha_blend@pipe-c-alpha-basic:
    - shard-apl:          NOTRUN -> [FAIL][94] ([fdo#108145] / [i915#265]) +2 similar issues
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl1/igt@kms_plane_alpha_blend@pipe-c-alpha-basic.html

  * igt@kms_plane_alpha_blend@pipe-c-alpha-opaque-fb:
    - shard-kbl:          NOTRUN -> [FAIL][95] ([fdo#108145] / [i915#265]) +2 similar issues
   [95]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl7/igt@kms_plane_alpha_blend@pipe-c-alpha-opaque-fb.html

  * igt@kms_plane_scaling@plane-upscale-with-rotation-20x20@pipe-c-edp-1:
    - shard-iclb:         NOTRUN -> [SKIP][96] ([i915#5176]) +5 similar issues
   [96]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb7/igt@kms_plane_scaling@plane-upscale-with-rotation-20x20@pipe-c-edp-1.html

  * igt@kms_plane_scaling@planes-downscale-factor-0-25@pipe-a-edp-1:
    - shard-iclb:         NOTRUN -> [SKIP][97] ([i915#5235]) +2 similar issues
   [97]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb7/igt@kms_plane_scaling@planes-downscale-factor-0-25@pipe-a-edp-1.html

  * igt@kms_prime@basic-crc@first-to-second:
    - shard-tglb:         NOTRUN -> [SKIP][98] ([i915#1836])
   [98]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb3/igt@kms_prime@basic-crc@first-to-second.html
    - shard-iclb:         NOTRUN -> [SKIP][99] ([i915#1836])
   [99]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb8/igt@kms_prime@basic-crc@first-to-second.html

  * igt@kms_psr2_sf@plane-move-sf-dmg-area:
    - shard-apl:          NOTRUN -> [SKIP][100] ([fdo#109271] / [i915#658]) +2 similar issues
   [100]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl6/igt@kms_psr2_sf@plane-move-sf-dmg-area.html

  * igt@kms_psr2_su@page_flip-nv12:
    - shard-iclb:         NOTRUN -> [SKIP][101] ([fdo#109642] / [fdo#111068] / [i915#658])
   [101]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb6/igt@kms_psr2_su@page_flip-nv12.html

  * igt@kms_psr2_su@page_flip-xrgb8888:
    - shard-kbl:          NOTRUN -> [SKIP][102] ([fdo#109271] / [i915#658]) +2 similar issues
   [102]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl7/igt@kms_psr2_su@page_flip-xrgb8888.html

  * igt@kms_psr@psr2_cursor_blt:
    - shard-iclb:         [PASS][103] -> [SKIP][104] ([fdo#109441]) +1 similar issue
   [103]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-iclb2/igt@kms_psr@psr2_cursor_blt.html
   [104]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb1/igt@kms_psr@psr2_cursor_blt.html

  * igt@kms_psr@psr2_cursor_mmap_gtt:
    - shard-tglb:         NOTRUN -> [FAIL][105] ([i915#132] / [i915#3467])
   [105]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb1/igt@kms_psr@psr2_cursor_mmap_gtt.html
    - shard-iclb:         NOTRUN -> [SKIP][106] ([fdo#109441])
   [106]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb5/igt@kms_psr@psr2_cursor_mmap_gtt.html

  * igt@kms_scaling_modes@scaling-mode-none@edp-1-pipe-a:
    - shard-iclb:         NOTRUN -> [SKIP][107] ([i915#5030]) +2 similar issues
   [107]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb2/igt@kms_scaling_modes@scaling-mode-none@edp-1-pipe-a.html

  * igt@kms_scaling_modes@scaling-mode-none@edp-1-pipe-d:
    - shard-tglb:         NOTRUN -> [SKIP][108] ([i915#5030]) +3 similar issues
   [108]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb1/igt@kms_scaling_modes@scaling-mode-none@edp-1-pipe-d.html

  * igt@kms_vblank@pipe-a-ts-continuation-suspend:
    - shard-apl:          NOTRUN -> [DMESG-WARN][109] ([i915#180])
   [109]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl2/igt@kms_vblank@pipe-a-ts-continuation-suspend.html
    - shard-kbl:          [PASS][110] -> [DMESG-WARN][111] ([i915#180]) +1 similar issue
   [110]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-kbl4/igt@kms_vblank@pipe-a-ts-continuation-suspend.html
   [111]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl1/igt@kms_vblank@pipe-a-ts-continuation-suspend.html

  * igt@kms_vblank@pipe-d-wait-forked:
    - shard-iclb:         NOTRUN -> [SKIP][112] ([fdo#109278]) +11 similar issues
   [112]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb2/igt@kms_vblank@pipe-d-wait-forked.html

  * igt@kms_writeback@writeback-fb-id:
    - shard-glk:          NOTRUN -> [SKIP][113] ([fdo#109271] / [i915#2437])
   [113]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-glk6/igt@kms_writeback@writeback-fb-id.html

  * igt@kms_writeback@writeback-pixel-formats:
    - shard-kbl:          NOTRUN -> [SKIP][114] ([fdo#109271] / [i915#2437])
   [114]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl7/igt@kms_writeback@writeback-pixel-formats.html

  * igt@nouveau_crc@pipe-a-ctx-flip-skip-current-frame:
    - shard-iclb:         NOTRUN -> [SKIP][115] ([i915#2530])
   [115]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb8/igt@nouveau_crc@pipe-a-ctx-flip-skip-current-frame.html

  * igt@prime_nv_api@i915_nv_import_twice_check_flink_name:
    - shard-iclb:         NOTRUN -> [SKIP][116] ([fdo#109291]) +2 similar issues
   [116]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb8/igt@prime_nv_api@i915_nv_import_twice_check_flink_name.html

  * igt@prime_nv_api@i915_self_import_to_different_fd:
    - shard-tglb:         NOTRUN -> [SKIP][117] ([fdo#109291])
   [117]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb2/igt@prime_nv_api@i915_self_import_to_different_fd.html

  * igt@sw_sync@sync_merge_same:
    - shard-apl:          NOTRUN -> [FAIL][118] ([i915#6140]) +1 similar issue
   [118]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl6/igt@sw_sync@sync_merge_same.html

  * igt@sw_sync@sync_multi_timeline_wait:
    - shard-kbl:          NOTRUN -> [FAIL][119] ([i915#6140])
   [119]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl4/igt@sw_sync@sync_multi_timeline_wait.html

  * igt@sysfs_clients@recycle:
    - shard-tglb:         NOTRUN -> [SKIP][120] ([i915#2994])
   [120]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb3/igt@sysfs_clients@recycle.html
    - shard-glk:          NOTRUN -> [SKIP][121] ([fdo#109271] / [i915#2994])
   [121]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-glk8/igt@sysfs_clients@recycle.html
    - shard-iclb:         NOTRUN -> [SKIP][122] ([i915#2994]) +1 similar issue
   [122]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb3/igt@sysfs_clients@recycle.html

  * igt@sysfs_clients@split-25:
    - shard-kbl:          NOTRUN -> [SKIP][123] ([fdo#109271] / [i915#2994]) +1 similar issue
   [123]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl6/igt@sysfs_clients@split-25.html

  * igt@sysfs_clients@split-50:
    - shard-apl:          NOTRUN -> [SKIP][124] ([fdo#109271] / [i915#2994]) +1 similar issue
   [124]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl7/igt@sysfs_clients@split-50.html

  
#### Possible fixes ####

  * igt@gem_ctx_persistence@smoketest:
    - shard-glk:          [INCOMPLETE][125] ([i915#6310]) -> [PASS][126]
   [125]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-glk2/igt@gem_ctx_persistence@smoketest.html
   [126]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-glk3/igt@gem_ctx_persistence@smoketest.html

  * igt@gem_eio@unwedge-stress:
    - shard-tglb:         [FAIL][127] ([i915#5784]) -> [PASS][128]
   [127]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-tglb3/igt@gem_eio@unwedge-stress.html
   [128]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb7/igt@gem_eio@unwedge-stress.html

  * igt@gem_exec_balancer@parallel:
    - shard-iclb:         [SKIP][129] ([i915#4525]) -> [PASS][130] +1 similar issue
   [129]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-iclb5/igt@gem_exec_balancer@parallel.html
   [130]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb2/igt@gem_exec_balancer@parallel.html

  * igt@gem_exec_fair@basic-none-share@rcs0:
    - shard-glk:          [FAIL][131] ([i915#2842]) -> [PASS][132]
   [131]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-glk6/igt@gem_exec_fair@basic-none-share@rcs0.html
   [132]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-glk6/igt@gem_exec_fair@basic-none-share@rcs0.html

  * igt@gem_exec_fair@basic-none@vcs1:
    - shard-kbl:          [FAIL][133] ([i915#2842]) -> [PASS][134] +1 similar issue
   [133]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-kbl7/igt@gem_exec_fair@basic-none@vcs1.html
   [134]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl4/igt@gem_exec_fair@basic-none@vcs1.html

  * igt@gem_userptr_blits@huge-split:
    - shard-apl:          [FAIL][135] -> [PASS][136]
   [135]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-apl6/igt@gem_userptr_blits@huge-split.html
   [136]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl1/igt@gem_userptr_blits@huge-split.html

  * igt@gem_workarounds@suspend-resume-fd:
    - shard-kbl:          [DMESG-WARN][137] ([i915#180]) -> [PASS][138] +2 similar issues
   [137]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-kbl4/igt@gem_workarounds@suspend-resume-fd.html
   [138]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl7/igt@gem_workarounds@suspend-resume-fd.html

  * igt@gen9_exec_parse@allowed-single:
    - shard-apl:          [DMESG-WARN][139] ([i915#5566] / [i915#716]) -> [PASS][140]
   [139]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-apl6/igt@gen9_exec_parse@allowed-single.html
   [140]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl7/igt@gen9_exec_parse@allowed-single.html

  * igt@i915_pm_dc@dc6-psr:
    - shard-iclb:         [FAIL][141] ([i915#454]) -> [PASS][142]
   [141]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-iclb7/igt@i915_pm_dc@dc6-psr.html
   [142]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb6/igt@i915_pm_dc@dc6-psr.html

  * igt@i915_suspend@debugfs-reader:
    - shard-apl:          [DMESG-WARN][143] ([i915#180]) -> [PASS][144] +2 similar issues
   [143]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-apl3/igt@i915_suspend@debugfs-reader.html
   [144]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl8/igt@i915_suspend@debugfs-reader.html

  * igt@kms_busy@extended-modeset-hang-newfb-with-reset@pipe-c:
    - shard-glk:          [DMESG-WARN][145] ([i915#6310]) -> [PASS][146]
   [145]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-glk6/igt@kms_busy@extended-modeset-hang-newfb-with-reset@pipe-c.html
   [146]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-glk2/igt@kms_busy@extended-modeset-hang-newfb-with-reset@pipe-c.html

  * igt@kms_flip@2x-flip-vs-expired-vblank@bc-hdmi-a1-hdmi-a2:
    - shard-glk:          [FAIL][147] ([i915#79]) -> [PASS][148]
   [147]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-glk2/igt@kms_flip@2x-flip-vs-expired-vblank@bc-hdmi-a1-hdmi-a2.html
   [148]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-glk2/igt@kms_flip@2x-flip-vs-expired-vblank@bc-hdmi-a1-hdmi-a2.html

  * igt@kms_hdr@bpc-switch-dpms@pipe-a-dp-1:
    - shard-kbl:          [FAIL][149] ([i915#1188]) -> [PASS][150]
   [149]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-kbl7/igt@kms_hdr@bpc-switch-dpms@pipe-a-dp-1.html
   [150]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl6/igt@kms_hdr@bpc-switch-dpms@pipe-a-dp-1.html

  * igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-pixel-formats@pipe-b-edp-1:
    - shard-iclb:         [SKIP][151] ([i915#5176]) -> [PASS][152] +1 similar issue
   [151]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-iclb3/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-pixel-formats@pipe-b-edp-1.html
   [152]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb2/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-pixel-formats@pipe-b-edp-1.html

  * igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-a-edp-1:
    - shard-iclb:         [SKIP][153] ([i915#5235]) -> [PASS][154] +5 similar issues
   [153]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-iclb2/igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-a-edp-1.html
   [154]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb6/igt@kms_plane_scaling@planes-downscale-factor-0-5@pipe-a-edp-1.html

  * igt@kms_psr@psr2_sprite_blt:
    - shard-iclb:         [SKIP][155] ([fdo#109441]) -> [PASS][156] +2 similar issues
   [155]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-iclb6/igt@kms_psr@psr2_sprite_blt.html
   [156]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb2/igt@kms_psr@psr2_sprite_blt.html

  * igt@kms_psr_stress_test@invalidate-primary-flip-overlay:
    - shard-iclb:         [SKIP][157] ([i915#5519]) -> [PASS][158]
   [157]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-iclb6/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html
   [158]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb8/igt@kms_psr_stress_test@invalidate-primary-flip-overlay.html

  * igt@prime_mmap_coherency@ioctl-errors:
    - shard-glk:          [DMESG-FAIL][159] ([i915#6310]) -> [PASS][160]
   [159]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-glk8/igt@prime_mmap_coherency@ioctl-errors.html
   [160]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-glk9/igt@prime_mmap_coherency@ioctl-errors.html

  
#### Warnings ####

  * igt@i915_pm_dc@dc3co-vpb-simulation:
    - shard-iclb:         [SKIP][161] ([i915#588]) -> [SKIP][162] ([i915#658])
   [161]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-iclb2/igt@i915_pm_dc@dc3co-vpb-simulation.html
   [162]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb6/igt@i915_pm_dc@dc3co-vpb-simulation.html

  * igt@kms_content_protection@mei_interface:
    - shard-tglb:         [SKIP][163] ([fdo#109300]) -> [SKIP][164] ([i915#1063])
   [163]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-tglb3/igt@kms_content_protection@mei_interface.html
   [164]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-tglb1/igt@kms_content_protection@mei_interface.html
    - shard-iclb:         [SKIP][165] ([fdo#109300]) -> [SKIP][166] ([fdo#109300] / [fdo#111066])
   [165]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-iclb1/igt@kms_content_protection@mei_interface.html
   [166]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb2/igt@kms_content_protection@mei_interface.html

  * igt@kms_plane_alpha_blend@pipe-c-constant-alpha-max:
    - shard-glk:          [FAIL][167] ([fdo#108145] / [i915#265]) -> [FAIL][168] ([fdo#108145] / [i915#1888] / [i915#265])
   [167]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-glk2/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-max.html
   [168]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-glk3/igt@kms_plane_alpha_blend@pipe-c-constant-alpha-max.html

  * igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf:
    - shard-iclb:         [SKIP][169] ([i915#2920]) -> [SKIP][170] ([i915#658]) +1 similar issue
   [169]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-iclb2/igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf.html
   [170]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb6/igt@kms_psr2_sf@cursor-plane-move-continuous-exceed-sf.html

  * igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area:
    - shard-iclb:         [SKIP][171] ([fdo#111068] / [i915#658]) -> [SKIP][172] ([i915#2920])
   [171]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-iclb3/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area.html
   [172]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb2/igt@kms_psr2_sf@overlay-primary-update-sf-dmg-area.html

  * igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-big-fb:
    - shard-iclb:         [SKIP][173] ([i915#658]) -> [SKIP][174] ([i915#2920])
   [173]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-iclb8/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-big-fb.html
   [174]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-iclb2/igt@kms_psr2_sf@primary-plane-update-sf-dmg-area-big-fb.html

  * igt@runner@aborted:
    - shard-apl:          ([FAIL][175], [FAIL][176], [FAIL][177], [FAIL][178], [FAIL][179], [FAIL][180]) ([fdo#109271] / [i915#180] / [i915#3002] / [i915#4312] / [i915#5257]) -> ([FAIL][181], [FAIL][182], [FAIL][183], [FAIL][184], [FAIL][185], [FAIL][186]) ([i915#180] / [i915#3002] / [i915#337] / [i915#4312] / [i915#5257])
   [175]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-apl6/igt@runner@aborted.html
   [176]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-apl6/igt@runner@aborted.html
   [177]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-apl4/igt@runner@aborted.html
   [178]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-apl3/igt@runner@aborted.html
   [179]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-apl4/igt@runner@aborted.html
   [180]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-apl7/igt@runner@aborted.html
   [181]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl1/igt@runner@aborted.html
   [182]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl7/igt@runner@aborted.html
   [183]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl3/igt@runner@aborted.html
   [184]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl2/igt@runner@aborted.html
   [185]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl8/igt@runner@aborted.html
   [186]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-apl8/igt@runner@aborted.html
    - shard-kbl:          ([FAIL][187], [FAIL][188], [FAIL][189], [FAIL][190], [FAIL][191], [FAIL][192], [FAIL][193], [FAIL][194], [FAIL][195], [FAIL][196], [FAIL][197], [FAIL][198]) ([i915#180] / [i915#3002] / [i915#4312] / [i915#5257]) -> ([FAIL][199], [FAIL][200], [FAIL][201], [FAIL][202], [FAIL][203], [FAIL][204], [FAIL][205], [FAIL][206], [FAIL][207], [FAIL][208], [FAIL][209], [FAIL][210], [FAIL][211], [FAIL][212]) ([fdo#109271] / [i915#180] / [i915#3002] / [i915#4312] / [i915#5257] / [i915#716])
   [187]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-kbl7/igt@runner@aborted.html
   [188]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-kbl4/igt@runner@aborted.html
   [189]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-kbl7/igt@runner@aborted.html
   [190]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-kbl1/igt@runner@aborted.html
   [191]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-kbl4/igt@runner@aborted.html
   [192]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-kbl1/igt@runner@aborted.html
   [193]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-kbl1/igt@runner@aborted.html
   [194]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-kbl6/igt@runner@aborted.html
   [195]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-kbl6/igt@runner@aborted.html
   [196]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-kbl4/igt@runner@aborted.html
   [197]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-kbl6/igt@runner@aborted.html
   [198]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_6555/shard-kbl6/igt@runner@aborted.html
   [199]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl1/igt@runner@aborted.html
   [200]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl1/igt@runner@aborted.html
   [201]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl7/igt@runner@aborted.html
   [202]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl7/igt@runner@aborted.html
   [203]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl4/igt@runner@aborted.html
   [204]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl1/igt@runner@aborted.html
   [205]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl1/igt@runner@aborted.html
   [206]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl1/igt@runner@aborted.html
   [207]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl6/igt@runner@aborted.html
   [208]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl6/igt@runner@aborted.html
   [209]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl1/igt@runner@aborted.html
   [210]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl7/igt@runner@aborted.html
   [211]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl4/igt@runner@aborted.html
   [212]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/shard-kbl6/igt@runner@aborted.html

  
  {name}: This element is suppressed. This means it is ignored when computing
          the status of the difference (SUCCESS, WARNING, or FAILURE).

  [fdo#108145]: https://bugs.freedesktop.org/show_bug.cgi?id=108145
  [fdo#109271]: https://bugs.freedesktop.org/show_bug.cgi?id=109271
  [fdo#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
  [fdo#109278]: https://bugs.freedesktop.org/show_bug.cgi?id=109278
  [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
  [fdo#109283]: https://bugs.freedesktop.org/show_bug.cgi?id=109283
  [fdo#109284]: https://bugs.freedesktop.org/show_bug.cgi?id=109284
  [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
  [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
  [fdo#109291]: https://bugs.freedesktop.org/show_bug.cgi?id=109291
  [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
  [fdo#109300]: https://bugs.freedesktop.org/show_bug.cgi?id=109300
  [fdo#109302]: https://bugs.freedesktop.org/show_bug.cgi?id=109302
  [fdo#109303]: https://bugs.freedesktop.org/show_bug.cgi?id=109303
  [fdo#109308]: https://bugs.freedesktop.org/show_bug.cgi?id=109308
  [fdo#109309]: https://bugs.freedesktop.org/show_bug.cgi?id=109309
  [fdo#109312]: https://bugs.freedesktop.org/show_bug.cgi?id=109312
  [fdo#109314]: https://bugs.freedesktop.org/show_bug.cgi?id=109314
  [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
  [fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506
  [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
  [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
  [fdo#110723]: https://bugs.freedesktop.org/show_bug.cgi?id=110723
  [fdo#111066]: https://bugs.freedesktop.org/show_bug.cgi?id=111066
  [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
  [fdo#111314]: https://bugs.freedesktop.org/show_bug.cgi?id=111314
  [fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
  [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
  [fdo#111644]: https://bugs.freedesktop.org/show_bug.cgi?id=111644
  [fdo#111656]: https://bugs.freedesktop.org/show_bug.cgi?id=111656
  [fdo#111825]: https://bugs.freedesktop.org/show_bug.cgi?id=111825
  [fdo#111827]: https://bugs.freedesktop.org/show_bug.cgi?id=111827
  [fdo#112054]: https://bugs.freedesktop.org/show_bug.cgi?id=112054
  [fdo#112283]: https://bugs.freedesktop.org/show_bug.cgi?id=112283
  [i915#1063]: https://gitlab.freedesktop.org/drm/intel/issues/1063
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099
  [i915#1155]: https://gitlab.freedesktop.org/drm/intel/issues/1155
  [i915#118]: https://gitlab.freedesktop.org/drm/intel/issues/118
  [i915#1188]: https://gitlab.freedesktop.org/drm/intel/issues/1188
  [i915#1257]: https://gitlab.freedesktop.org/drm/intel/issues/1257
  [i915#132]: https://gitlab.freedesktop.org/drm/intel/issues/132
  [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
  [i915#1769]: https://gitlab.freedesktop.org/drm/intel/issues/1769
  [i915#180]: https://gitlab.freedesktop.org/drm/intel/issues/180
  [i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
  [i915#1836]: https://gitlab.freedesktop.org/drm/intel/issues/1836
  [i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
  [i915#1845]: https://gitlab.freedesktop.org/drm/intel/issues/1845
  [i915#1849]: https://gitlab.freedesktop.org/drm/intel/issues/1849
  [i915#1888]: https://gitlab.freedesktop.org/drm/intel/issues/1888
  [i915#1902]: https://gitlab.freedesktop.org/drm/intel/issues/1902
  [i915#2122]: https://gitlab.freedesktop.org/drm/intel/issues/2122
  [i915#2190]: https://gitlab.freedesktop.org/drm/intel/issues/2190
  [i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
  [i915#2410]: https://gitlab.freedesktop.org/drm/intel/issues/2410
  [i915#2433]: https://gitlab.freedesktop.org/drm/intel/issues/2433
  [i915#2434]: https://gitlab.freedesktop.org/drm/intel/issues/2434
  [i915#2435]: https://gitlab.freedesktop.org/drm/intel/issues/2435
  [i915#2436]: https://gitlab.freedesktop.org/drm/intel/issues/2436
  [i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437
  [i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
  [i915#2530]: https://gitlab.freedesktop.org/drm/intel/issues/2530
  [i915#2532]: https://gitlab.freedesktop.org/drm/intel/issues/2532
  [i915#2582]: https://gitlab.freedesktop.org/drm/intel/issues/2582
  [i915#265]: https://gitlab.freedesktop.org/drm/intel/issues/265
  [i915#2658]: https://gitlab.freedesktop.org/drm/intel/issues/2658
  [i915#2672]: https://gitlab.freedesktop.org/drm/intel/issues/2672
  [i915#2681]: https://gitlab.freedesktop.org/drm/intel/issues/2681
  [i915#2705]: https://gitlab.freedesktop.org/drm/intel/issues/2705
  [i915#280]: https://gitlab.freedesktop.org/drm/intel/issues/280
  [i915#284]: https://gitlab.freedesktop.org/drm/intel/issues/284
  [i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
  [i915#2849]: https://gitlab.freedesktop.org/drm/intel/issues/2849
  [i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
  [i915#2920]: https://gitlab.freedesktop.org/drm/intel/issues/2920
  [i915#2994]: https://gitlab.freedesktop.org/drm/intel/issues/2994
  [i915#3002]: https://gitlab.freedesktop.org/drm/intel/issues/3002
  [i915#3012]: https://gitlab.freedesktop.org/drm/intel/issues/3012
  [i915#3063]: https://gitlab.freedesktop.org/drm/intel/issues/3063
  [i915#3116]: https://gitlab.freedesktop.org/drm/intel/issues/3116
  [i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
  [i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
  [i915#3291]: https://gitlab.freedesktop.org/drm/intel/issues/3291
  [i915#3297]: https://gitlab.freedesktop.org/drm/intel/issues/3297
  [i915#3299]: https://gitlab.freedesktop.org/drm/intel/issues/3299
  [i915#3301]: https://gitlab.freedesktop.org/drm/intel/issues/3301
  [i915#3318]: https://gitlab.freedesktop.org/drm/intel/issues/3318
  [i915#3323]: https://gitlab.freedesktop.org/drm/intel/issues/3323
  [i915#3359]: https://gitlab.freedesktop.org/drm/intel/issues/3359
  [i915#3361]: https://gitlab.freedesktop.org/drm/intel/issues/3361
  [i915#337]: https://gitlab.freedesktop.org/drm/intel/issues/337
  [i915#3376]: https://gitlab.freedesktop.org/drm/intel/issues/3376
  [i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
  [i915#3467]: https://gitlab.freedesktop.org/drm/intel/issues/3467
  [i915#3469]: https://gitlab.freedesktop.org/drm/intel/issues/3469
  [i915#3528]: https://gitlab.freedesktop.org/drm/intel/issues/3528
  [i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3558]: https://gitlab.freedesktop.org/drm/intel/issues/3558
  [i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637
  [i915#3638]: https://gitlab.freedesktop.org/drm/intel/issues/3638
  [i915#3689]: https://gitlab.freedesktop.org/drm/intel/issues/3689
  [i915#3708]: https://gitlab.freedesktop.org/drm/intel/issues/3708
  [i915#3734]: https://gitlab.freedesktop.org/drm/intel/issues/3734
  [i915#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742
  [i915#3804]: https://gitlab.freedesktop.org/drm/intel/issues/3804
  [i915#3826]: https://gitlab.freedesktop.org/drm/intel/issues/3826
  [i915#3828]: https://gitlab.freedesktop.org/drm/intel/issues/3828
  [i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
  [i915#3936]: https://gitlab.freedesktop.org/drm/intel/issues/3936
  [i915#3938]: https://gitlab.freedesktop.org/drm/intel/issues/3938
  [i915#3952]: https://gitlab.freedesktop.org/drm/intel/issues/3952
  [i915#3955]: https://gitlab.freedesktop.org/drm/intel/issues/3955
  [i915#3963]: https://gitlab.freedesktop.org/drm/intel/issues/3963
  [i915#3966]: https://gitlab.freedesktop.org/drm/intel/issues/3966
  [i915#3989]: https://gitlab.freedesktop.org/drm/intel/issues/3989
  [i915#4016]: https://gitlab.freedesktop.org/drm/intel/issues/4016
  [i915#4036]: https://gitlab.freedesktop.org/drm/intel/issues/4036
  [i915#404]: https://gitlab.freedesktop.org/drm/intel/issues/404
  [i915#4070]: https://gitlab.freedesktop.org/drm/intel/issues/4070
  [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
  [i915#4079]: https://gitlab.freedesktop.org/drm/intel/issues/4079
  [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
  [i915#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
  [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4171]: https://gitlab.freedesktop.org/drm/intel/issues/4171
  [i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
  [i915#4213]: https://gitlab.freedesktop.org/drm/intel/issues/4213
  [i915#4215]: https://gitlab.freedesktop.org/drm/intel/issues/4215
  [i915#426]: https://gitlab.freedesktop.org/drm/intel/issues/426
  [i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
  [i915#4278]: https://gitlab.freedesktop.org/drm/intel/issues/4278
  [i915#4281]: https://gitlab.freedesktop.org/drm/intel/issues/4281
  [i915#4312]: https://gitlab.freedesktop.org/drm/intel/issues/4312
  [i915#433]: https://gitlab.freedesktop.org/drm/intel/issues/433
  [i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349
  [i915#4369]: https://gitlab.freedesktop.org/drm/intel/issues/4369
  [i915#4387]: https://gitlab.freedesktop.org/drm/intel/issues/4387
  [i915#4462]: https://gitlab.freedesktop.org/drm/intel/issues/4462
  [i915#4525]: https://gitlab.freedesktop.org/drm/intel/issues/4525
  [i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
  [i915#454]: https://gitlab.freedesktop.org/drm/intel/issues/454
  [i915#4565]: https://gitlab.freedesktop.org/drm/intel/issues/4565
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4767]: https://gitlab.freedesktop.org/drm/intel/issues/4767
  [i915#4771]: https://gitlab.freedesktop.org/drm/intel/issues/4771
  [i915#4812]: https://gitlab.freedesktop.org/drm/intel/issues/4812
  [i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833
  [i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
  [i915#4853]: https://gitlab.freedesktop.org/drm/intel/issues/4853
  [i915#4854]: https://gitlab.freedesktop.org/drm/intel/issues/4854
  [i915#4855]: https://gitlab.freedesktop.org/drm/intel/issues/4855
  [i915#4859]: https://gitlab.freedesktop.org/drm/intel/issues/4859
  [i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860
  [i915#4874]: https://gitlab.freedesktop.org/drm/intel/issues/4874
  [i915#4877]: https://gitlab.freedesktop.org/drm/intel/issues/4877
  [i915#4880]: https://gitlab.freedesktop.org/drm/intel/issues/4880
  [i915#4881]: https://gitlab.freedesktop.org/drm/intel/issues/4881
  [i915#4883]: https://gitlab.freedesktop.org/drm/intel/issues/4883
  [i915#4884]: https://gitlab.freedesktop.org/drm/intel/issues/4884
  [i915#4885]: https://gitlab.freedesktop.org/drm/intel/issues/4885
  [i915#4893]: https://gitlab.freedesktop.org/drm/intel/issues/4893
  [i915#4904]: https://gitlab.freedesktop.org/drm/intel/issues/4904
  [i915#4936]: https://gitlab.freedesktop.org/drm/intel/issues/4936
  [i915#4941]: https://gitlab.freedesktop.org/drm/intel/issues/4941
  [i915#4991]: https://gitlab.freedesktop.org/drm/intel/issues/4991
  [i915#5030]: https://gitlab.freedesktop.org/drm/intel/issues/5030
  [i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
  [i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
  [i915#5257]: https://gitlab.freedesktop.org/drm/intel/issues/5257
  [i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
  [i915#5287]: https://gitlab.freedesktop.org/drm/intel/issues/5287
  [i915#5288]: https://gitlab.freedesktop.org/drm/intel/issues/5288
  [i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
  [i915#5325]: https://gitlab.freedesktop.org/drm/intel/issues/5325
  [i915#5327]: https://gitlab.freedesktop.org/drm/intel/issues/5327
  [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
  [i915#5439]: https://gitlab.freedesktop.org/drm/intel/issues/5439
  [i915#5461]: https://gitlab.freedesktop.org/drm/intel/issues/5461
  [i915#5519]: https://gitlab.freedesktop.org/drm/intel/issues/5519
  [i915#5563]: https://gitlab.freedesktop.org/drm/intel/issues/5563
  [i915#5566]: https://gitlab.freedesktop.org/drm/intel/issues/5566
  [i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784
  [i915#588]: https://gitlab.freedesktop.org/drm/intel/issues/588
  [i915#5903]: https://gitlab.freedesktop.org/drm/intel/issues/5903
  [i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
  [i915#6140]: https://gitlab.freedesktop.org/drm/intel/issues/6140
  [i915#6141]: https://gitlab.freedesktop.org/drm/intel/issues/6141
  [i915#6230]: https://gitlab.freedesktop.org/drm/intel/issues/6230
  [i915#6245]: https://gitlab.freedesktop.org/drm/intel/issues/6245
  [i915#6247]: https://gitlab.freedesktop.org/drm/intel/issues/6247
  [i915#6248]: https://gitlab.freedesktop.org/drm/intel/issues/6248
  [i915#6252]: https://gitlab.freedesktop.org/drm/intel/issues/6252
  [i915#6258]: https://gitlab.freedesktop.org/drm/intel/issues/6258
  [i915#6268]: https://gitlab.freedesktop.org/drm/intel/issues/6268
  [i915#6310]: https://gitlab.freedesktop.org/drm/intel/issues/6310
  [i915#6335]: https://gitlab.freedesktop.org/drm/intel/issues/6335
  [i915#6344]: https://gitlab.freedesktop.org/drm/intel/issues/6344
  [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
  [i915#716]: https://gitlab.freedesktop.org/drm/intel/issues/716
  [i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79


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

  * CI: CI-20190529 -> None
  * IGT: IGT_6555 -> IGTPW_7455

  CI-20190529: 20190529
  CI_DRM_11844: 1521a456fc4a93afd21a1eb38066f22ce3f2e380 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_7455: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/index.html
  IGT_6555: 1a3ffecd400b8f82c35745fa2e07992f6bdeede2 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_7455/index.html

[-- Attachment #2: Type: text/html, Size: 63052 bytes --]

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

* Re: [Intel-gfx] [PATCH i-g-t] tests/i915/kms_big_fb: trigger async flip with a dummy flip
  2022-06-28 11:04 ` [igt-dev] " Arun R Murthy
@ 2022-07-05  9:27   ` Karthik B S
  -1 siblings, 0 replies; 22+ messages in thread
From: Karthik B S @ 2022-07-05  9:27 UTC (permalink / raw)
  To: Arun R Murthy, igt-dev; +Cc: intel-gfx, Juha-Pekka Heikkilä

On 6/28/2022 4:34 PM, Arun R Murthy wrote:
> In oder to trigger the async flip, a dummy flip is required after sync
> flip so as to update the watermarks for async in KMD which happens as
> part of this dummy flip. Thereafter async memory update will act as a
> trigger register.
> Capturing the CRC is done after the async flip as async flip at some
> times can consume fairly a vblank period time.
>
> Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
> ---
>   tests/i915/kms_big_fb.c | 29 +++++++++++++++++++----------
>   1 file changed, 19 insertions(+), 10 deletions(-)
>
> diff --git a/tests/i915/kms_big_fb.c b/tests/i915/kms_big_fb.c
> index d50fde45..6caf3c31 100644
> --- a/tests/i915/kms_big_fb.c
> +++ b/tests/i915/kms_big_fb.c
> @@ -465,7 +465,7 @@ static bool test_pipe(data_t *data)
>   static bool
>   max_hw_stride_async_flip_test(data_t *data)
>   {
> -	uint32_t ret, startframe;
> +	uint32_t ret, frame;
>   	const uint32_t w = data->output->config.default_mode.hdisplay,
>   		       h = data->output->config.default_mode.vdisplay;
>   	igt_plane_t *primary;
> @@ -519,7 +519,19 @@ max_hw_stride_async_flip_test(data_t *data)
>   					  DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
>   
>   		igt_wait_for_vblank(data->drm_fd, data->display.pipes[primary->pipe->pipe].crtc_offset);
> -		startframe = kmstest_get_vblank(data->drm_fd, data->pipe, 0) + 1;
> +		/*
> +		 * In older platforms (<= Gen10), async address update bit is double buffered.
> +		 * So flip timestamp can be verified only from the second flip.
> +		 * The first async flip just enables the async address update.
> +		 * In platforms greater than DISPLAY13 the first async flip will be discarded
> +		 * in order to change the watermark levels as per the optimization. Hence the
> +		 * subsequent async flips will actually do the asynchronous flips.
> +		 */
> +		ret = drmModePageFlip(data->drm_fd, data->output->config.crtc->crtc_id,
> +						      data->big_fb_flip[i].fb_id,
> +						      DRM_MODE_PAGE_FLIP_ASYNC, NULL);
> +		igt_wait_for_vblank(data->drm_fd, data->display.pipes[primary->pipe->pipe].crtc_offset);
> +		frame = kmstest_get_vblank(data->drm_fd, data->pipe, 0) + 1;

Hi,

Should this be added inside a gen check similar to kms_async_flips?

>   
>   		for (int j = 0; j < 2; j++) {
>   			do {
> @@ -528,23 +540,20 @@ max_hw_stride_async_flip_test(data_t *data)
>   						      DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>   			} while (ret == -EBUSY);
>   			igt_assert(ret == 0);
> +			igt_pipe_crc_get_for_frame(data->drm_fd, data->pipe_crc,
> +					   frame, &compare_crc);
>   
> +			frame = kmstest_get_vblank(data->drm_fd, data->pipe, 0) + 1;
>   			do {
>   				ret = drmModePageFlip(data->drm_fd, data->output->config.crtc->crtc_id,
>   						      data->big_fb.fb_id,
>   						      DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>   			} while (ret == -EBUSY);
>   			igt_assert(ret == 0);
> +			igt_pipe_crc_get_for_frame(data->drm_fd, data->pipe_crc,
> +					   frame, &async_crc);

We should be moving this IMHO. By waiting for vblank after each async 
flip to capture CRC, what is the intended result? Seems to be completely 
changing the existing test logic.

Also, seems like we are overwriting the CRC captured for j = 0, as 
comparison is done outside this loop. Is this done on purpose?

Thanks,
Karthik.B.S
>   		}
>   
> -		igt_pipe_crc_get_for_frame(data->drm_fd, data->pipe_crc,
> -					   startframe, &compare_crc);
> -		igt_pipe_crc_get_for_frame(data->drm_fd, data->pipe_crc,
> -					   startframe + 1, &async_crc);
> -
> -		igt_assert_f(kmstest_get_vblank(data->drm_fd, data->pipe, 0) -
> -			     startframe == 1, "lost frames\n");
> -
>   		igt_assert_f(igt_check_crc_equal(&compare_crc, &async_crc)^(i^1),
>   			     "CRC failure with async flip, crc %s match for checked round\n",
>   			     i?"should":"shouldn't");



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

* Re: [igt-dev] [PATCH i-g-t] tests/i915/kms_big_fb: trigger async flip with a dummy flip
@ 2022-07-05  9:27   ` Karthik B S
  0 siblings, 0 replies; 22+ messages in thread
From: Karthik B S @ 2022-07-05  9:27 UTC (permalink / raw)
  To: Arun R Murthy, igt-dev; +Cc: intel-gfx, Juha-Pekka Heikkilä

On 6/28/2022 4:34 PM, Arun R Murthy wrote:
> In oder to trigger the async flip, a dummy flip is required after sync
> flip so as to update the watermarks for async in KMD which happens as
> part of this dummy flip. Thereafter async memory update will act as a
> trigger register.
> Capturing the CRC is done after the async flip as async flip at some
> times can consume fairly a vblank period time.
>
> Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
> ---
>   tests/i915/kms_big_fb.c | 29 +++++++++++++++++++----------
>   1 file changed, 19 insertions(+), 10 deletions(-)
>
> diff --git a/tests/i915/kms_big_fb.c b/tests/i915/kms_big_fb.c
> index d50fde45..6caf3c31 100644
> --- a/tests/i915/kms_big_fb.c
> +++ b/tests/i915/kms_big_fb.c
> @@ -465,7 +465,7 @@ static bool test_pipe(data_t *data)
>   static bool
>   max_hw_stride_async_flip_test(data_t *data)
>   {
> -	uint32_t ret, startframe;
> +	uint32_t ret, frame;
>   	const uint32_t w = data->output->config.default_mode.hdisplay,
>   		       h = data->output->config.default_mode.vdisplay;
>   	igt_plane_t *primary;
> @@ -519,7 +519,19 @@ max_hw_stride_async_flip_test(data_t *data)
>   					  DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
>   
>   		igt_wait_for_vblank(data->drm_fd, data->display.pipes[primary->pipe->pipe].crtc_offset);
> -		startframe = kmstest_get_vblank(data->drm_fd, data->pipe, 0) + 1;
> +		/*
> +		 * In older platforms (<= Gen10), async address update bit is double buffered.
> +		 * So flip timestamp can be verified only from the second flip.
> +		 * The first async flip just enables the async address update.
> +		 * In platforms greater than DISPLAY13 the first async flip will be discarded
> +		 * in order to change the watermark levels as per the optimization. Hence the
> +		 * subsequent async flips will actually do the asynchronous flips.
> +		 */
> +		ret = drmModePageFlip(data->drm_fd, data->output->config.crtc->crtc_id,
> +						      data->big_fb_flip[i].fb_id,
> +						      DRM_MODE_PAGE_FLIP_ASYNC, NULL);
> +		igt_wait_for_vblank(data->drm_fd, data->display.pipes[primary->pipe->pipe].crtc_offset);
> +		frame = kmstest_get_vblank(data->drm_fd, data->pipe, 0) + 1;

Hi,

Should this be added inside a gen check similar to kms_async_flips?

>   
>   		for (int j = 0; j < 2; j++) {
>   			do {
> @@ -528,23 +540,20 @@ max_hw_stride_async_flip_test(data_t *data)
>   						      DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>   			} while (ret == -EBUSY);
>   			igt_assert(ret == 0);
> +			igt_pipe_crc_get_for_frame(data->drm_fd, data->pipe_crc,
> +					   frame, &compare_crc);
>   
> +			frame = kmstest_get_vblank(data->drm_fd, data->pipe, 0) + 1;
>   			do {
>   				ret = drmModePageFlip(data->drm_fd, data->output->config.crtc->crtc_id,
>   						      data->big_fb.fb_id,
>   						      DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>   			} while (ret == -EBUSY);
>   			igt_assert(ret == 0);
> +			igt_pipe_crc_get_for_frame(data->drm_fd, data->pipe_crc,
> +					   frame, &async_crc);

We should be moving this IMHO. By waiting for vblank after each async 
flip to capture CRC, what is the intended result? Seems to be completely 
changing the existing test logic.

Also, seems like we are overwriting the CRC captured for j = 0, as 
comparison is done outside this loop. Is this done on purpose?

Thanks,
Karthik.B.S
>   		}
>   
> -		igt_pipe_crc_get_for_frame(data->drm_fd, data->pipe_crc,
> -					   startframe, &compare_crc);
> -		igt_pipe_crc_get_for_frame(data->drm_fd, data->pipe_crc,
> -					   startframe + 1, &async_crc);
> -
> -		igt_assert_f(kmstest_get_vblank(data->drm_fd, data->pipe, 0) -
> -			     startframe == 1, "lost frames\n");
> -
>   		igt_assert_f(igt_check_crc_equal(&compare_crc, &async_crc)^(i^1),
>   			     "CRC failure with async flip, crc %s match for checked round\n",
>   			     i?"should":"shouldn't");


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

* Re: [Intel-gfx] [PATCH i-g-t] tests/i915/kms_big_fb: trigger async flip with a dummy flip
  2022-07-05  9:27   ` [igt-dev] " Karthik B S
@ 2022-07-05  9:38     ` Murthy, Arun R
  -1 siblings, 0 replies; 22+ messages in thread
From: Murthy, Arun R @ 2022-07-05  9:38 UTC (permalink / raw)
  To: B S, Karthik, igt-dev; +Cc: intel-gfx, Heikkila, Juha-pekka

> On 6/28/2022 4:34 PM, Arun R Murthy wrote:
> > In oder to trigger the async flip, a dummy flip is required after sync
> > flip so as to update the watermarks for async in KMD which happens as
> > part of this dummy flip. Thereafter async memory update will act as a
> > trigger register.
> > Capturing the CRC is done after the async flip as async flip at some
> > times can consume fairly a vblank period time.
> >
> > Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
> > ---
> >   tests/i915/kms_big_fb.c | 29 +++++++++++++++++++----------
> >   1 file changed, 19 insertions(+), 10 deletions(-)
> >
> > diff --git a/tests/i915/kms_big_fb.c b/tests/i915/kms_big_fb.c index
> > d50fde45..6caf3c31 100644
> > --- a/tests/i915/kms_big_fb.c
> > +++ b/tests/i915/kms_big_fb.c
> > @@ -465,7 +465,7 @@ static bool test_pipe(data_t *data)
> >   static bool
> >   max_hw_stride_async_flip_test(data_t *data)
> >   {
> > -	uint32_t ret, startframe;
> > +	uint32_t ret, frame;
> >   	const uint32_t w = data->output->config.default_mode.hdisplay,
> >   		       h = data->output->config.default_mode.vdisplay;
> >   	igt_plane_t *primary;
> > @@ -519,7 +519,19 @@ max_hw_stride_async_flip_test(data_t *data)
> >
> DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
> >
> >   		igt_wait_for_vblank(data->drm_fd, data-
> >display.pipes[primary->pipe->pipe].crtc_offset);
> > -		startframe = kmstest_get_vblank(data->drm_fd, data->pipe,
> 0) + 1;
> > +		/*
> > +		 * In older platforms (<= Gen10), async address update bit is
> double buffered.
> > +		 * So flip timestamp can be verified only from the second flip.
> > +		 * The first async flip just enables the async address update.
> > +		 * In platforms greater than DISPLAY13 the first async flip will
> be discarded
> > +		 * in order to change the watermark levels as per the
> optimization. Hence the
> > +		 * subsequent async flips will actually do the asynchronous
> flips.
> > +		 */
> > +		ret = drmModePageFlip(data->drm_fd, data->output-
> >config.crtc->crtc_id,
> > +						      data->big_fb_flip[i].fb_id,
> > +
> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
> > +		igt_wait_for_vblank(data->drm_fd, data-
> >display.pipes[primary->pipe->pipe].crtc_offset);
> > +		frame = kmstest_get_vblank(data->drm_fd, data->pipe, 0) +
> 1;
> 
> Hi,
> 
> Should this be added inside a gen check similar to kms_async_flips?

Yes sorry missed it!

> 
> >
> >   		for (int j = 0; j < 2; j++) {
> >   			do {
> > @@ -528,23 +540,20 @@ max_hw_stride_async_flip_test(data_t *data)
> >
> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
> >   			} while (ret == -EBUSY);
> >   			igt_assert(ret == 0);
> > +			igt_pipe_crc_get_for_frame(data->drm_fd, data-
> >pipe_crc,
> > +					   frame, &compare_crc);
> >
> > +			frame = kmstest_get_vblank(data->drm_fd, data-
> >pipe, 0) + 1;
> >   			do {
> >   				ret = drmModePageFlip(data->drm_fd, data-
> >output->config.crtc->crtc_id,
> >   						      data->big_fb.fb_id,
> >
> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
> >   			} while (ret == -EBUSY);
> >   			igt_assert(ret == 0);
> > +			igt_pipe_crc_get_for_frame(data->drm_fd, data-
> >pipe_crc,
> > +					   frame, &async_crc);
> 
> We should be moving this IMHO. By waiting for vblank after each async flip
> to capture CRC, what is the intended result? Seems to be completely
> changing the existing test logic.

We are getting the vblank count and based on that getting the crc. Now we know for async flip at
certain times it can consume a time equivalent to a vblank period. So in those scenarios getting crc
based on the vblank goes for a toss. Hence capturing the vblank start time stamp at the beginning
of each flip.

> 
> Also, seems like we are overwriting the CRC captured for j = 0, as comparison
> is done outside this loop. Is this done on purpose?

Now with the changing the vblank start frame capture being added before the async flip, CRC can
be captured outside the loop as well, but makes no sense. To maintain this order moving the CRC
Capture also after each frame.

Thanks and Regards,
Arun R Murthy
--------------------

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

* Re: [igt-dev] [PATCH i-g-t] tests/i915/kms_big_fb: trigger async flip with a dummy flip
@ 2022-07-05  9:38     ` Murthy, Arun R
  0 siblings, 0 replies; 22+ messages in thread
From: Murthy, Arun R @ 2022-07-05  9:38 UTC (permalink / raw)
  To: B S, Karthik, igt-dev; +Cc: intel-gfx, Heikkila, Juha-pekka

> On 6/28/2022 4:34 PM, Arun R Murthy wrote:
> > In oder to trigger the async flip, a dummy flip is required after sync
> > flip so as to update the watermarks for async in KMD which happens as
> > part of this dummy flip. Thereafter async memory update will act as a
> > trigger register.
> > Capturing the CRC is done after the async flip as async flip at some
> > times can consume fairly a vblank period time.
> >
> > Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
> > ---
> >   tests/i915/kms_big_fb.c | 29 +++++++++++++++++++----------
> >   1 file changed, 19 insertions(+), 10 deletions(-)
> >
> > diff --git a/tests/i915/kms_big_fb.c b/tests/i915/kms_big_fb.c index
> > d50fde45..6caf3c31 100644
> > --- a/tests/i915/kms_big_fb.c
> > +++ b/tests/i915/kms_big_fb.c
> > @@ -465,7 +465,7 @@ static bool test_pipe(data_t *data)
> >   static bool
> >   max_hw_stride_async_flip_test(data_t *data)
> >   {
> > -	uint32_t ret, startframe;
> > +	uint32_t ret, frame;
> >   	const uint32_t w = data->output->config.default_mode.hdisplay,
> >   		       h = data->output->config.default_mode.vdisplay;
> >   	igt_plane_t *primary;
> > @@ -519,7 +519,19 @@ max_hw_stride_async_flip_test(data_t *data)
> >
> DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
> >
> >   		igt_wait_for_vblank(data->drm_fd, data-
> >display.pipes[primary->pipe->pipe].crtc_offset);
> > -		startframe = kmstest_get_vblank(data->drm_fd, data->pipe,
> 0) + 1;
> > +		/*
> > +		 * In older platforms (<= Gen10), async address update bit is
> double buffered.
> > +		 * So flip timestamp can be verified only from the second flip.
> > +		 * The first async flip just enables the async address update.
> > +		 * In platforms greater than DISPLAY13 the first async flip will
> be discarded
> > +		 * in order to change the watermark levels as per the
> optimization. Hence the
> > +		 * subsequent async flips will actually do the asynchronous
> flips.
> > +		 */
> > +		ret = drmModePageFlip(data->drm_fd, data->output-
> >config.crtc->crtc_id,
> > +						      data->big_fb_flip[i].fb_id,
> > +
> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
> > +		igt_wait_for_vblank(data->drm_fd, data-
> >display.pipes[primary->pipe->pipe].crtc_offset);
> > +		frame = kmstest_get_vblank(data->drm_fd, data->pipe, 0) +
> 1;
> 
> Hi,
> 
> Should this be added inside a gen check similar to kms_async_flips?

Yes sorry missed it!

> 
> >
> >   		for (int j = 0; j < 2; j++) {
> >   			do {
> > @@ -528,23 +540,20 @@ max_hw_stride_async_flip_test(data_t *data)
> >
> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
> >   			} while (ret == -EBUSY);
> >   			igt_assert(ret == 0);
> > +			igt_pipe_crc_get_for_frame(data->drm_fd, data-
> >pipe_crc,
> > +					   frame, &compare_crc);
> >
> > +			frame = kmstest_get_vblank(data->drm_fd, data-
> >pipe, 0) + 1;
> >   			do {
> >   				ret = drmModePageFlip(data->drm_fd, data-
> >output->config.crtc->crtc_id,
> >   						      data->big_fb.fb_id,
> >
> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
> >   			} while (ret == -EBUSY);
> >   			igt_assert(ret == 0);
> > +			igt_pipe_crc_get_for_frame(data->drm_fd, data-
> >pipe_crc,
> > +					   frame, &async_crc);
> 
> We should be moving this IMHO. By waiting for vblank after each async flip
> to capture CRC, what is the intended result? Seems to be completely
> changing the existing test logic.

We are getting the vblank count and based on that getting the crc. Now we know for async flip at
certain times it can consume a time equivalent to a vblank period. So in those scenarios getting crc
based on the vblank goes for a toss. Hence capturing the vblank start time stamp at the beginning
of each flip.

> 
> Also, seems like we are overwriting the CRC captured for j = 0, as comparison
> is done outside this loop. Is this done on purpose?

Now with the changing the vblank start frame capture being added before the async flip, CRC can
be captured outside the loop as well, but makes no sense. To maintain this order moving the CRC
Capture also after each frame.

Thanks and Regards,
Arun R Murthy
--------------------

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

* Re: [Intel-gfx] [PATCH i-g-t] tests/i915/kms_big_fb: trigger async flip with a dummy flip
  2022-07-05  9:38     ` [igt-dev] " Murthy, Arun R
@ 2022-07-05  9:49       ` Karthik B S
  -1 siblings, 0 replies; 22+ messages in thread
From: Karthik B S @ 2022-07-05  9:49 UTC (permalink / raw)
  To: Murthy, Arun R, igt-dev; +Cc: intel-gfx, Heikkila, Juha-pekka

On 7/5/2022 3:08 PM, Murthy, Arun R wrote:
>> On 6/28/2022 4:34 PM, Arun R Murthy wrote:
>>> In oder to trigger the async flip, a dummy flip is required after sync
>>> flip so as to update the watermarks for async in KMD which happens as
>>> part of this dummy flip. Thereafter async memory update will act as a
>>> trigger register.
>>> Capturing the CRC is done after the async flip as async flip at some
>>> times can consume fairly a vblank period time.
>>>
>>> Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
>>> ---
>>>    tests/i915/kms_big_fb.c | 29 +++++++++++++++++++----------
>>>    1 file changed, 19 insertions(+), 10 deletions(-)
>>>
>>> diff --git a/tests/i915/kms_big_fb.c b/tests/i915/kms_big_fb.c index
>>> d50fde45..6caf3c31 100644
>>> --- a/tests/i915/kms_big_fb.c
>>> +++ b/tests/i915/kms_big_fb.c
>>> @@ -465,7 +465,7 @@ static bool test_pipe(data_t *data)
>>>    static bool
>>>    max_hw_stride_async_flip_test(data_t *data)
>>>    {
>>> -	uint32_t ret, startframe;
>>> +	uint32_t ret, frame;
>>>    	const uint32_t w = data->output->config.default_mode.hdisplay,
>>>    		       h = data->output->config.default_mode.vdisplay;
>>>    	igt_plane_t *primary;
>>> @@ -519,7 +519,19 @@ max_hw_stride_async_flip_test(data_t *data)
>>>
>> DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
>>>    		igt_wait_for_vblank(data->drm_fd, data-
>>> display.pipes[primary->pipe->pipe].crtc_offset);
>>> -		startframe = kmstest_get_vblank(data->drm_fd, data->pipe,
>> 0) + 1;
>>> +		/*
>>> +		 * In older platforms (<= Gen10), async address update bit is
>> double buffered.
>>> +		 * So flip timestamp can be verified only from the second flip.
>>> +		 * The first async flip just enables the async address update.
>>> +		 * In platforms greater than DISPLAY13 the first async flip will
>> be discarded
>>> +		 * in order to change the watermark levels as per the
>> optimization. Hence the
>>> +		 * subsequent async flips will actually do the asynchronous
>> flips.
>>> +		 */
>>> +		ret = drmModePageFlip(data->drm_fd, data->output-
>>> config.crtc->crtc_id,
>>> +						      data->big_fb_flip[i].fb_id,
>>> +
>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>>> +		igt_wait_for_vblank(data->drm_fd, data-
>>> display.pipes[primary->pipe->pipe].crtc_offset);
>>> +		frame = kmstest_get_vblank(data->drm_fd, data->pipe, 0) +
>> 1;
>>
>> Hi,
>>
>> Should this be added inside a gen check similar to kms_async_flips?
> Yes sorry missed it!
>
>>>    		for (int j = 0; j < 2; j++) {
>>>    			do {
>>> @@ -528,23 +540,20 @@ max_hw_stride_async_flip_test(data_t *data)
>>>
>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>>>    			} while (ret == -EBUSY);
>>>    			igt_assert(ret == 0);
>>> +			igt_pipe_crc_get_for_frame(data->drm_fd, data-
>>> pipe_crc,
>>> +					   frame, &compare_crc);
>>>
>>> +			frame = kmstest_get_vblank(data->drm_fd, data-
>>> pipe, 0) + 1;
>>>    			do {
>>>    				ret = drmModePageFlip(data->drm_fd, data-
>>> output->config.crtc->crtc_id,
>>>    						      data->big_fb.fb_id,
>>>
>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>>>    			} while (ret == -EBUSY);
>>>    			igt_assert(ret == 0);
>>> +			igt_pipe_crc_get_for_frame(data->drm_fd, data-
>>> pipe_crc,
>>> +					   frame, &async_crc);
>> We should be moving this IMHO. By waiting for vblank after each async flip
>> to capture CRC, what is the intended result? Seems to be completely
>> changing the existing test logic.
> We are getting the vblank count and based on that getting the crc. Now we know for async flip at
> certain times it can consume a time equivalent to a vblank period. So in those scenarios getting crc
> based on the vblank goes for a toss. Hence capturing the vblank start time stamp at the beginning
> of each flip.

Hi,

But what is the the reference CRC we're expecting? The original logic is 
designed to match on one iteration and mismatch on the next using a 
combination of fb's by using async flips. But with these changes that 
whole logic goes for a toss?

>
>> Also, seems like we are overwriting the CRC captured for j = 0, as comparison
>> is done outside this loop. Is this done on purpose?
> Now with the changing the vblank start frame capture being added before the async flip, CRC can
> be captured outside the loop as well, but makes no sense. To maintain this order moving the CRC
> Capture also after each frame.

The CRC comparison is still outside the loop, so no point capturing 
CRC's if we finally discard it anyway?

Thanks,
Karthik.B.S
> Thanks and Regards,
> Arun R Murthy
> --------------------



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

* Re: [igt-dev] [PATCH i-g-t] tests/i915/kms_big_fb: trigger async flip with a dummy flip
@ 2022-07-05  9:49       ` Karthik B S
  0 siblings, 0 replies; 22+ messages in thread
From: Karthik B S @ 2022-07-05  9:49 UTC (permalink / raw)
  To: Murthy, Arun R, igt-dev; +Cc: intel-gfx, Heikkila, Juha-pekka

On 7/5/2022 3:08 PM, Murthy, Arun R wrote:
>> On 6/28/2022 4:34 PM, Arun R Murthy wrote:
>>> In oder to trigger the async flip, a dummy flip is required after sync
>>> flip so as to update the watermarks for async in KMD which happens as
>>> part of this dummy flip. Thereafter async memory update will act as a
>>> trigger register.
>>> Capturing the CRC is done after the async flip as async flip at some
>>> times can consume fairly a vblank period time.
>>>
>>> Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
>>> ---
>>>    tests/i915/kms_big_fb.c | 29 +++++++++++++++++++----------
>>>    1 file changed, 19 insertions(+), 10 deletions(-)
>>>
>>> diff --git a/tests/i915/kms_big_fb.c b/tests/i915/kms_big_fb.c index
>>> d50fde45..6caf3c31 100644
>>> --- a/tests/i915/kms_big_fb.c
>>> +++ b/tests/i915/kms_big_fb.c
>>> @@ -465,7 +465,7 @@ static bool test_pipe(data_t *data)
>>>    static bool
>>>    max_hw_stride_async_flip_test(data_t *data)
>>>    {
>>> -	uint32_t ret, startframe;
>>> +	uint32_t ret, frame;
>>>    	const uint32_t w = data->output->config.default_mode.hdisplay,
>>>    		       h = data->output->config.default_mode.vdisplay;
>>>    	igt_plane_t *primary;
>>> @@ -519,7 +519,19 @@ max_hw_stride_async_flip_test(data_t *data)
>>>
>> DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
>>>    		igt_wait_for_vblank(data->drm_fd, data-
>>> display.pipes[primary->pipe->pipe].crtc_offset);
>>> -		startframe = kmstest_get_vblank(data->drm_fd, data->pipe,
>> 0) + 1;
>>> +		/*
>>> +		 * In older platforms (<= Gen10), async address update bit is
>> double buffered.
>>> +		 * So flip timestamp can be verified only from the second flip.
>>> +		 * The first async flip just enables the async address update.
>>> +		 * In platforms greater than DISPLAY13 the first async flip will
>> be discarded
>>> +		 * in order to change the watermark levels as per the
>> optimization. Hence the
>>> +		 * subsequent async flips will actually do the asynchronous
>> flips.
>>> +		 */
>>> +		ret = drmModePageFlip(data->drm_fd, data->output-
>>> config.crtc->crtc_id,
>>> +						      data->big_fb_flip[i].fb_id,
>>> +
>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>>> +		igt_wait_for_vblank(data->drm_fd, data-
>>> display.pipes[primary->pipe->pipe].crtc_offset);
>>> +		frame = kmstest_get_vblank(data->drm_fd, data->pipe, 0) +
>> 1;
>>
>> Hi,
>>
>> Should this be added inside a gen check similar to kms_async_flips?
> Yes sorry missed it!
>
>>>    		for (int j = 0; j < 2; j++) {
>>>    			do {
>>> @@ -528,23 +540,20 @@ max_hw_stride_async_flip_test(data_t *data)
>>>
>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>>>    			} while (ret == -EBUSY);
>>>    			igt_assert(ret == 0);
>>> +			igt_pipe_crc_get_for_frame(data->drm_fd, data-
>>> pipe_crc,
>>> +					   frame, &compare_crc);
>>>
>>> +			frame = kmstest_get_vblank(data->drm_fd, data-
>>> pipe, 0) + 1;
>>>    			do {
>>>    				ret = drmModePageFlip(data->drm_fd, data-
>>> output->config.crtc->crtc_id,
>>>    						      data->big_fb.fb_id,
>>>
>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>>>    			} while (ret == -EBUSY);
>>>    			igt_assert(ret == 0);
>>> +			igt_pipe_crc_get_for_frame(data->drm_fd, data-
>>> pipe_crc,
>>> +					   frame, &async_crc);
>> We should be moving this IMHO. By waiting for vblank after each async flip
>> to capture CRC, what is the intended result? Seems to be completely
>> changing the existing test logic.
> We are getting the vblank count and based on that getting the crc. Now we know for async flip at
> certain times it can consume a time equivalent to a vblank period. So in those scenarios getting crc
> based on the vblank goes for a toss. Hence capturing the vblank start time stamp at the beginning
> of each flip.

Hi,

But what is the the reference CRC we're expecting? The original logic is 
designed to match on one iteration and mismatch on the next using a 
combination of fb's by using async flips. But with these changes that 
whole logic goes for a toss?

>
>> Also, seems like we are overwriting the CRC captured for j = 0, as comparison
>> is done outside this loop. Is this done on purpose?
> Now with the changing the vblank start frame capture being added before the async flip, CRC can
> be captured outside the loop as well, but makes no sense. To maintain this order moving the CRC
> Capture also after each frame.

The CRC comparison is still outside the loop, so no point capturing 
CRC's if we finally discard it anyway?

Thanks,
Karthik.B.S
> Thanks and Regards,
> Arun R Murthy
> --------------------


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

* Re: [Intel-gfx] [PATCH i-g-t] tests/i915/kms_big_fb: trigger async flip with a dummy flip
  2022-07-05  9:49       ` [igt-dev] " Karthik B S
@ 2022-07-05 10:16         ` Murthy, Arun R
  -1 siblings, 0 replies; 22+ messages in thread
From: Murthy, Arun R @ 2022-07-05 10:16 UTC (permalink / raw)
  To: B S, Karthik, igt-dev; +Cc: intel-gfx, Heikkila, Juha-pekka

> On 7/5/2022 3:08 PM, Murthy, Arun R wrote:
> >> On 6/28/2022 4:34 PM, Arun R Murthy wrote:
> >>> In oder to trigger the async flip, a dummy flip is required after
> >>> sync flip so as to update the watermarks for async in KMD which
> >>> happens as part of this dummy flip. Thereafter async memory update
> >>> will act as a trigger register.
> >>> Capturing the CRC is done after the async flip as async flip at some
> >>> times can consume fairly a vblank period time.
> >>>
> >>> Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
> >>> ---
> >>>    tests/i915/kms_big_fb.c | 29 +++++++++++++++++++----------
> >>>    1 file changed, 19 insertions(+), 10 deletions(-)
> >>>
> >>> diff --git a/tests/i915/kms_big_fb.c b/tests/i915/kms_big_fb.c index
> >>> d50fde45..6caf3c31 100644
> >>> --- a/tests/i915/kms_big_fb.c
> >>> +++ b/tests/i915/kms_big_fb.c
> >>> @@ -465,7 +465,7 @@ static bool test_pipe(data_t *data)
> >>>    static bool
> >>>    max_hw_stride_async_flip_test(data_t *data)
> >>>    {
> >>> -	uint32_t ret, startframe;
> >>> +	uint32_t ret, frame;
> >>>    	const uint32_t w = data->output->config.default_mode.hdisplay,
> >>>    		       h = data->output->config.default_mode.vdisplay;
> >>>    	igt_plane_t *primary;
> >>> @@ -519,7 +519,19 @@ max_hw_stride_async_flip_test(data_t *data)
> >>>
> >> DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
> >>>    		igt_wait_for_vblank(data->drm_fd, data-
> >>> display.pipes[primary->pipe->pipe].crtc_offset);
> >>> -		startframe = kmstest_get_vblank(data->drm_fd, data->pipe,
> >> 0) + 1;
> >>> +		/*
> >>> +		 * In older platforms (<= Gen10), async address update bit is
> >> double buffered.
> >>> +		 * So flip timestamp can be verified only from the second flip.
> >>> +		 * The first async flip just enables the async address update.
> >>> +		 * In platforms greater than DISPLAY13 the first async flip will
> >> be discarded
> >>> +		 * in order to change the watermark levels as per the
> >> optimization. Hence the
> >>> +		 * subsequent async flips will actually do the asynchronous
> >> flips.
> >>> +		 */
> >>> +		ret = drmModePageFlip(data->drm_fd, data->output-
> >>> config.crtc->crtc_id,
> >>> +						      data->big_fb_flip[i].fb_id,
> >>> +
> >> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
> >>> +		igt_wait_for_vblank(data->drm_fd, data-
> >>> display.pipes[primary->pipe->pipe].crtc_offset);
> >>> +		frame = kmstest_get_vblank(data->drm_fd, data->pipe, 0) +
> >> 1;
> >>
> >> Hi,
> >>
> >> Should this be added inside a gen check similar to kms_async_flips?
> > Yes sorry missed it!
> >
> >>>    		for (int j = 0; j < 2; j++) {
> >>>    			do {
> >>> @@ -528,23 +540,20 @@ max_hw_stride_async_flip_test(data_t *data)
> >>>
> >> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
> >>>    			} while (ret == -EBUSY);
> >>>    			igt_assert(ret == 0);
> >>> +			igt_pipe_crc_get_for_frame(data->drm_fd, data-
> >>> pipe_crc,
> >>> +					   frame, &compare_crc);
> >>>
> >>> +			frame = kmstest_get_vblank(data->drm_fd, data-
> >>> pipe, 0) + 1;
> >>>    			do {
> >>>    				ret = drmModePageFlip(data->drm_fd, data-
> >>> output->config.crtc->crtc_id,
> >>>    						      data->big_fb.fb_id,
> >>>
> >> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
> >>>    			} while (ret == -EBUSY);
> >>>    			igt_assert(ret == 0);
> >>> +			igt_pipe_crc_get_for_frame(data->drm_fd, data-
> >>> pipe_crc,
> >>> +					   frame, &async_crc);
> >> We should be moving this IMHO. By waiting for vblank after each async
> >> flip to capture CRC, what is the intended result? Seems to be
> >> completely changing the existing test logic.
> > We are getting the vblank count and based on that getting the crc. Now
> > we know for async flip at certain times it can consume a time
> > equivalent to a vblank period. So in those scenarios getting crc based
> > on the vblank goes for a toss. Hence capturing the vblank start time stamp
> at the beginning of each flip.
> 
> Hi,
> 
> But what is the the reference CRC we're expecting? The original logic is
> designed to match on one iteration and mismatch on the next using a
> combination of fb's by using async flips. But with these changes that whole
> logic goes for a toss?
> 
But I see this logic doesn’t work. We cannot rely on the CRC based on the vblank time frame for each flips. Since this is a async flip and at times the async flip can consume a vblank time period for flipping. So the CRC captured based on starteframe+1 logic is not right.

Thanks and Regards,
Arun R Murthy
--------------------

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

* Re: [igt-dev] [PATCH i-g-t] tests/i915/kms_big_fb: trigger async flip with a dummy flip
@ 2022-07-05 10:16         ` Murthy, Arun R
  0 siblings, 0 replies; 22+ messages in thread
From: Murthy, Arun R @ 2022-07-05 10:16 UTC (permalink / raw)
  To: B S, Karthik, igt-dev; +Cc: intel-gfx, Heikkila, Juha-pekka

> On 7/5/2022 3:08 PM, Murthy, Arun R wrote:
> >> On 6/28/2022 4:34 PM, Arun R Murthy wrote:
> >>> In oder to trigger the async flip, a dummy flip is required after
> >>> sync flip so as to update the watermarks for async in KMD which
> >>> happens as part of this dummy flip. Thereafter async memory update
> >>> will act as a trigger register.
> >>> Capturing the CRC is done after the async flip as async flip at some
> >>> times can consume fairly a vblank period time.
> >>>
> >>> Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
> >>> ---
> >>>    tests/i915/kms_big_fb.c | 29 +++++++++++++++++++----------
> >>>    1 file changed, 19 insertions(+), 10 deletions(-)
> >>>
> >>> diff --git a/tests/i915/kms_big_fb.c b/tests/i915/kms_big_fb.c index
> >>> d50fde45..6caf3c31 100644
> >>> --- a/tests/i915/kms_big_fb.c
> >>> +++ b/tests/i915/kms_big_fb.c
> >>> @@ -465,7 +465,7 @@ static bool test_pipe(data_t *data)
> >>>    static bool
> >>>    max_hw_stride_async_flip_test(data_t *data)
> >>>    {
> >>> -	uint32_t ret, startframe;
> >>> +	uint32_t ret, frame;
> >>>    	const uint32_t w = data->output->config.default_mode.hdisplay,
> >>>    		       h = data->output->config.default_mode.vdisplay;
> >>>    	igt_plane_t *primary;
> >>> @@ -519,7 +519,19 @@ max_hw_stride_async_flip_test(data_t *data)
> >>>
> >> DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
> >>>    		igt_wait_for_vblank(data->drm_fd, data-
> >>> display.pipes[primary->pipe->pipe].crtc_offset);
> >>> -		startframe = kmstest_get_vblank(data->drm_fd, data->pipe,
> >> 0) + 1;
> >>> +		/*
> >>> +		 * In older platforms (<= Gen10), async address update bit is
> >> double buffered.
> >>> +		 * So flip timestamp can be verified only from the second flip.
> >>> +		 * The first async flip just enables the async address update.
> >>> +		 * In platforms greater than DISPLAY13 the first async flip will
> >> be discarded
> >>> +		 * in order to change the watermark levels as per the
> >> optimization. Hence the
> >>> +		 * subsequent async flips will actually do the asynchronous
> >> flips.
> >>> +		 */
> >>> +		ret = drmModePageFlip(data->drm_fd, data->output-
> >>> config.crtc->crtc_id,
> >>> +						      data->big_fb_flip[i].fb_id,
> >>> +
> >> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
> >>> +		igt_wait_for_vblank(data->drm_fd, data-
> >>> display.pipes[primary->pipe->pipe].crtc_offset);
> >>> +		frame = kmstest_get_vblank(data->drm_fd, data->pipe, 0) +
> >> 1;
> >>
> >> Hi,
> >>
> >> Should this be added inside a gen check similar to kms_async_flips?
> > Yes sorry missed it!
> >
> >>>    		for (int j = 0; j < 2; j++) {
> >>>    			do {
> >>> @@ -528,23 +540,20 @@ max_hw_stride_async_flip_test(data_t *data)
> >>>
> >> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
> >>>    			} while (ret == -EBUSY);
> >>>    			igt_assert(ret == 0);
> >>> +			igt_pipe_crc_get_for_frame(data->drm_fd, data-
> >>> pipe_crc,
> >>> +					   frame, &compare_crc);
> >>>
> >>> +			frame = kmstest_get_vblank(data->drm_fd, data-
> >>> pipe, 0) + 1;
> >>>    			do {
> >>>    				ret = drmModePageFlip(data->drm_fd, data-
> >>> output->config.crtc->crtc_id,
> >>>    						      data->big_fb.fb_id,
> >>>
> >> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
> >>>    			} while (ret == -EBUSY);
> >>>    			igt_assert(ret == 0);
> >>> +			igt_pipe_crc_get_for_frame(data->drm_fd, data-
> >>> pipe_crc,
> >>> +					   frame, &async_crc);
> >> We should be moving this IMHO. By waiting for vblank after each async
> >> flip to capture CRC, what is the intended result? Seems to be
> >> completely changing the existing test logic.
> > We are getting the vblank count and based on that getting the crc. Now
> > we know for async flip at certain times it can consume a time
> > equivalent to a vblank period. So in those scenarios getting crc based
> > on the vblank goes for a toss. Hence capturing the vblank start time stamp
> at the beginning of each flip.
> 
> Hi,
> 
> But what is the the reference CRC we're expecting? The original logic is
> designed to match on one iteration and mismatch on the next using a
> combination of fb's by using async flips. But with these changes that whole
> logic goes for a toss?
> 
But I see this logic doesn’t work. We cannot rely on the CRC based on the vblank time frame for each flips. Since this is a async flip and at times the async flip can consume a vblank time period for flipping. So the CRC captured based on starteframe+1 logic is not right.

Thanks and Regards,
Arun R Murthy
--------------------

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

* Re: [Intel-gfx] [PATCH i-g-t] tests/i915/kms_big_fb: trigger async flip with a dummy flip
  2022-07-05  9:49       ` [igt-dev] " Karthik B S
@ 2022-07-05 10:22         ` Juha-Pekka Heikkilä
  -1 siblings, 0 replies; 22+ messages in thread
From: Juha-Pekka Heikkilä @ 2022-07-05 10:22 UTC (permalink / raw)
  To: Karthik B S, Murthy, Arun R, igt-dev; +Cc: intel-gfx

Hi,

On 5.7.2022 12.49, Karthik B S wrote:
> On 7/5/2022 3:08 PM, Murthy, Arun R wrote:
>>> On 6/28/2022 4:34 PM, Arun R Murthy wrote:
>>>> In oder to trigger the async flip, a dummy flip is required after sync
>>>> flip so as to update the watermarks for async in KMD which happens as
>>>> part of this dummy flip. Thereafter async memory update will act as a
>>>> trigger register.
>>>> Capturing the CRC is done after the async flip as async flip at some
>>>> times can consume fairly a vblank period time.
>>>>
>>>> Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
>>>> ---
>>>>    tests/i915/kms_big_fb.c | 29 +++++++++++++++++++----------
>>>>    1 file changed, 19 insertions(+), 10 deletions(-)
>>>>
>>>> diff --git a/tests/i915/kms_big_fb.c b/tests/i915/kms_big_fb.c index
>>>> d50fde45..6caf3c31 100644
>>>> --- a/tests/i915/kms_big_fb.c
>>>> +++ b/tests/i915/kms_big_fb.c
>>>> @@ -465,7 +465,7 @@ static bool test_pipe(data_t *data)
>>>>    static bool
>>>>    max_hw_stride_async_flip_test(data_t *data)
>>>>    {
>>>> -    uint32_t ret, startframe;
>>>> +    uint32_t ret, frame;
>>>>        const uint32_t w = data->output->config.default_mode.hdisplay,
>>>>                   h = data->output->config.default_mode.vdisplay;
>>>>        igt_plane_t *primary;
>>>> @@ -519,7 +519,19 @@ max_hw_stride_async_flip_test(data_t *data)
>>>>
>>> DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
>>>>            igt_wait_for_vblank(data->drm_fd, data-
>>>> display.pipes[primary->pipe->pipe].crtc_offset);
>>>> -        startframe = kmstest_get_vblank(data->drm_fd, data->pipe,
>>> 0) + 1;
>>>> +        /*
>>>> +         * In older platforms (<= Gen10), async address update bit is
>>> double buffered.
>>>> +         * So flip timestamp can be verified only from the second 
>>>> flip.
>>>> +         * The first async flip just enables the async address update.
>>>> +         * In platforms greater than DISPLAY13 the first async flip 
>>>> will
>>> be discarded
>>>> +         * in order to change the watermark levels as per the
>>> optimization. Hence the
>>>> +         * subsequent async flips will actually do the asynchronous
>>> flips.
>>>> +         */
>>>> +        ret = drmModePageFlip(data->drm_fd, data->output-
>>>> config.crtc->crtc_id,
>>>> +                              data->big_fb_flip[i].fb_id,
>>>> +
>>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>>>> +        igt_wait_for_vblank(data->drm_fd, data-
>>>> display.pipes[primary->pipe->pipe].crtc_offset);
>>>> +        frame = kmstest_get_vblank(data->drm_fd, data->pipe, 0) +
>>> 1;
>>>
>>> Hi,
>>>
>>> Should this be added inside a gen check similar to kms_async_flips?
>> Yes sorry missed it!
>>
>>>>            for (int j = 0; j < 2; j++) {
>>>>                do {
>>>> @@ -528,23 +540,20 @@ max_hw_stride_async_flip_test(data_t *data)
>>>>
>>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>>>>                } while (ret == -EBUSY);
>>>>                igt_assert(ret == 0);
>>>> +            igt_pipe_crc_get_for_frame(data->drm_fd, data-
>>>> pipe_crc,
>>>> +                       frame, &compare_crc);
>>>>
>>>> +            frame = kmstest_get_vblank(data->drm_fd, data-
>>>> pipe, 0) + 1;
>>>>                do {
>>>>                    ret = drmModePageFlip(data->drm_fd, data-
>>>> output->config.crtc->crtc_id,
>>>>                                  data->big_fb.fb_id,
>>>>
>>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>>>>                } while (ret == -EBUSY);
>>>>                igt_assert(ret == 0);
>>>> +            igt_pipe_crc_get_for_frame(data->drm_fd, data-
>>>> pipe_crc,
>>>> +                       frame, &async_crc);
>>> We should be moving this IMHO. By waiting for vblank after each async 
>>> flip
>>> to capture CRC, what is the intended result? Seems to be completely
>>> changing the existing test logic.
>> We are getting the vblank count and based on that getting the crc. Now 
>> we know for async flip at
>> certain times it can consume a time equivalent to a vblank period. So 
>> in those scenarios getting crc
>> based on the vblank goes for a toss. Hence capturing the vblank start 
>> time stamp at the beginning
>> of each flip.
> 
> Hi,
> 
> But what is the the reference CRC we're expecting? The original logic is 
> designed to match on one iteration and mismatch on the next using a 
> combination of fb's by using async flips. But with these changes that 
> whole logic goes for a toss?
> 
>>
>>> Also, seems like we are overwriting the CRC captured for j = 0, as 
>>> comparison
>>> is done outside this loop. Is this done on purpose?
>> Now with the changing the vblank start frame capture being added 
>> before the async flip, CRC can
>> be captured outside the loop as well, but makes no sense. To maintain 
>> this order moving the CRC
>> Capture also after each frame.
> 
> The CRC comparison is still outside the loop, so no point capturing 
> CRC's if we finally discard it anyway?
> 

I think generally the idea Arun is changing is correct but he's missed 
how the test work.

I see there's Ville's change on kernel side for display_ver >=13 first 
async_flip is unconditionally (intentionally) missed, this is at 
intel_plane_do_async_flip(..) so this test will need adjustment

What Arun seem to have missed is on test those nested loops how they 
work, that part probably should've originally been commented in code bit 
better.

On original code there's after loop for j two time 
igt_pipe_crc_get_for_frame(..), first will capture crc from duration of 
loop of j, second will *wait* and capture current crc while there's 
framebuffer "big_fb" on screen (wait is about 1,5 frames). Inside j 
loop, against i is async flipped with fb from "big_fb_flip[i]" where one 
one fb look exactly like "big_fb" and check with this crc doesn't change 
when flip with same content. Then another "big_fb_flip[i]" is green 
color and check crc will change.

Now when inside "j" loop Arun added igt_pipe_crc_get_for_frame(..) this 
test becomes completely different because async flipping no more is 
tested do perform back'n'forth flipping.

/Juha-Pekka
---------------------------------------------------------------------
Intel Finland Oy
Registered Address: PL 281, 00181 Helsinki 
Business Identity Code: 0357606 - 4 
Domiciled in Helsinki 

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.

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

* Re: [igt-dev] [PATCH i-g-t] tests/i915/kms_big_fb: trigger async flip with a dummy flip
@ 2022-07-05 10:22         ` Juha-Pekka Heikkilä
  0 siblings, 0 replies; 22+ messages in thread
From: Juha-Pekka Heikkilä @ 2022-07-05 10:22 UTC (permalink / raw)
  To: Karthik B S, Murthy, Arun R, igt-dev; +Cc: intel-gfx

Hi,

On 5.7.2022 12.49, Karthik B S wrote:
> On 7/5/2022 3:08 PM, Murthy, Arun R wrote:
>>> On 6/28/2022 4:34 PM, Arun R Murthy wrote:
>>>> In oder to trigger the async flip, a dummy flip is required after sync
>>>> flip so as to update the watermarks for async in KMD which happens as
>>>> part of this dummy flip. Thereafter async memory update will act as a
>>>> trigger register.
>>>> Capturing the CRC is done after the async flip as async flip at some
>>>> times can consume fairly a vblank period time.
>>>>
>>>> Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
>>>> ---
>>>>    tests/i915/kms_big_fb.c | 29 +++++++++++++++++++----------
>>>>    1 file changed, 19 insertions(+), 10 deletions(-)
>>>>
>>>> diff --git a/tests/i915/kms_big_fb.c b/tests/i915/kms_big_fb.c index
>>>> d50fde45..6caf3c31 100644
>>>> --- a/tests/i915/kms_big_fb.c
>>>> +++ b/tests/i915/kms_big_fb.c
>>>> @@ -465,7 +465,7 @@ static bool test_pipe(data_t *data)
>>>>    static bool
>>>>    max_hw_stride_async_flip_test(data_t *data)
>>>>    {
>>>> -    uint32_t ret, startframe;
>>>> +    uint32_t ret, frame;
>>>>        const uint32_t w = data->output->config.default_mode.hdisplay,
>>>>                   h = data->output->config.default_mode.vdisplay;
>>>>        igt_plane_t *primary;
>>>> @@ -519,7 +519,19 @@ max_hw_stride_async_flip_test(data_t *data)
>>>>
>>> DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
>>>>            igt_wait_for_vblank(data->drm_fd, data-
>>>> display.pipes[primary->pipe->pipe].crtc_offset);
>>>> -        startframe = kmstest_get_vblank(data->drm_fd, data->pipe,
>>> 0) + 1;
>>>> +        /*
>>>> +         * In older platforms (<= Gen10), async address update bit is
>>> double buffered.
>>>> +         * So flip timestamp can be verified only from the second 
>>>> flip.
>>>> +         * The first async flip just enables the async address update.
>>>> +         * In platforms greater than DISPLAY13 the first async flip 
>>>> will
>>> be discarded
>>>> +         * in order to change the watermark levels as per the
>>> optimization. Hence the
>>>> +         * subsequent async flips will actually do the asynchronous
>>> flips.
>>>> +         */
>>>> +        ret = drmModePageFlip(data->drm_fd, data->output-
>>>> config.crtc->crtc_id,
>>>> +                              data->big_fb_flip[i].fb_id,
>>>> +
>>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>>>> +        igt_wait_for_vblank(data->drm_fd, data-
>>>> display.pipes[primary->pipe->pipe].crtc_offset);
>>>> +        frame = kmstest_get_vblank(data->drm_fd, data->pipe, 0) +
>>> 1;
>>>
>>> Hi,
>>>
>>> Should this be added inside a gen check similar to kms_async_flips?
>> Yes sorry missed it!
>>
>>>>            for (int j = 0; j < 2; j++) {
>>>>                do {
>>>> @@ -528,23 +540,20 @@ max_hw_stride_async_flip_test(data_t *data)
>>>>
>>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>>>>                } while (ret == -EBUSY);
>>>>                igt_assert(ret == 0);
>>>> +            igt_pipe_crc_get_for_frame(data->drm_fd, data-
>>>> pipe_crc,
>>>> +                       frame, &compare_crc);
>>>>
>>>> +            frame = kmstest_get_vblank(data->drm_fd, data-
>>>> pipe, 0) + 1;
>>>>                do {
>>>>                    ret = drmModePageFlip(data->drm_fd, data-
>>>> output->config.crtc->crtc_id,
>>>>                                  data->big_fb.fb_id,
>>>>
>>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>>>>                } while (ret == -EBUSY);
>>>>                igt_assert(ret == 0);
>>>> +            igt_pipe_crc_get_for_frame(data->drm_fd, data-
>>>> pipe_crc,
>>>> +                       frame, &async_crc);
>>> We should be moving this IMHO. By waiting for vblank after each async 
>>> flip
>>> to capture CRC, what is the intended result? Seems to be completely
>>> changing the existing test logic.
>> We are getting the vblank count and based on that getting the crc. Now 
>> we know for async flip at
>> certain times it can consume a time equivalent to a vblank period. So 
>> in those scenarios getting crc
>> based on the vblank goes for a toss. Hence capturing the vblank start 
>> time stamp at the beginning
>> of each flip.
> 
> Hi,
> 
> But what is the the reference CRC we're expecting? The original logic is 
> designed to match on one iteration and mismatch on the next using a 
> combination of fb's by using async flips. But with these changes that 
> whole logic goes for a toss?
> 
>>
>>> Also, seems like we are overwriting the CRC captured for j = 0, as 
>>> comparison
>>> is done outside this loop. Is this done on purpose?
>> Now with the changing the vblank start frame capture being added 
>> before the async flip, CRC can
>> be captured outside the loop as well, but makes no sense. To maintain 
>> this order moving the CRC
>> Capture also after each frame.
> 
> The CRC comparison is still outside the loop, so no point capturing 
> CRC's if we finally discard it anyway?
> 

I think generally the idea Arun is changing is correct but he's missed 
how the test work.

I see there's Ville's change on kernel side for display_ver >=13 first 
async_flip is unconditionally (intentionally) missed, this is at 
intel_plane_do_async_flip(..) so this test will need adjustment

What Arun seem to have missed is on test those nested loops how they 
work, that part probably should've originally been commented in code bit 
better.

On original code there's after loop for j two time 
igt_pipe_crc_get_for_frame(..), first will capture crc from duration of 
loop of j, second will *wait* and capture current crc while there's 
framebuffer "big_fb" on screen (wait is about 1,5 frames). Inside j 
loop, against i is async flipped with fb from "big_fb_flip[i]" where one 
one fb look exactly like "big_fb" and check with this crc doesn't change 
when flip with same content. Then another "big_fb_flip[i]" is green 
color and check crc will change.

Now when inside "j" loop Arun added igt_pipe_crc_get_for_frame(..) this 
test becomes completely different because async flipping no more is 
tested do perform back'n'forth flipping.

/Juha-Pekka
---------------------------------------------------------------------
Intel Finland Oy
Registered Address: PL 281, 00181 Helsinki 
Business Identity Code: 0357606 - 4 
Domiciled in Helsinki 

This e-mail and any attachments may contain confidential material for
the sole use of the intended recipient(s). Any review or distribution
by others is strictly prohibited. If you are not the intended
recipient, please contact the sender and delete all copies.

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

* Re: [Intel-gfx] [PATCH i-g-t] tests/i915/kms_big_fb: trigger async flip with a dummy flip
  2022-07-05 10:22         ` [igt-dev] " Juha-Pekka Heikkilä
@ 2022-07-05 10:28           ` Murthy, Arun R
  -1 siblings, 0 replies; 22+ messages in thread
From: Murthy, Arun R @ 2022-07-05 10:28 UTC (permalink / raw)
  To: Heikkila, Juha-pekka, B S, Karthik, igt-dev; +Cc: intel-gfx

> On 5.7.2022 12.49, Karthik B S wrote:
> > On 7/5/2022 3:08 PM, Murthy, Arun R wrote:
> >>> On 6/28/2022 4:34 PM, Arun R Murthy wrote:
> >>>> In oder to trigger the async flip, a dummy flip is required after
> >>>> sync flip so as to update the watermarks for async in KMD which
> >>>> happens as part of this dummy flip. Thereafter async memory update
> >>>> will act as a trigger register.
> >>>> Capturing the CRC is done after the async flip as async flip at
> >>>> some times can consume fairly a vblank period time.
> >>>>
> >>>> Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
> >>>> ---
> >>>>    tests/i915/kms_big_fb.c | 29 +++++++++++++++++++----------
> >>>>    1 file changed, 19 insertions(+), 10 deletions(-)
> >>>>
> >>>> diff --git a/tests/i915/kms_big_fb.c b/tests/i915/kms_big_fb.c
> >>>> index
> >>>> d50fde45..6caf3c31 100644
> >>>> --- a/tests/i915/kms_big_fb.c
> >>>> +++ b/tests/i915/kms_big_fb.c
> >>>> @@ -465,7 +465,7 @@ static bool test_pipe(data_t *data)
> >>>>    static bool
> >>>>    max_hw_stride_async_flip_test(data_t *data)
> >>>>    {
> >>>> -    uint32_t ret, startframe;
> >>>> +    uint32_t ret, frame;
> >>>>        const uint32_t w =
> >>>> data->output->config.default_mode.hdisplay,
> >>>>                   h = data->output->config.default_mode.vdisplay;
> >>>>        igt_plane_t *primary;
> >>>> @@ -519,7 +519,19 @@ max_hw_stride_async_flip_test(data_t *data)
> >>>>
> >>> DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
> >>>>            igt_wait_for_vblank(data->drm_fd, data-
> >>>> display.pipes[primary->pipe->pipe].crtc_offset);
> >>>> -        startframe = kmstest_get_vblank(data->drm_fd, data->pipe,
> >>> 0) + 1;
> >>>> +        /*
> >>>> +         * In older platforms (<= Gen10), async address update bit
> >>>> +is
> >>> double buffered.
> >>>> +         * So flip timestamp can be verified only from the second
> >>>> flip.
> >>>> +         * The first async flip just enables the async address update.
> >>>> +         * In platforms greater than DISPLAY13 the first async
> >>>> +flip
> >>>> will
> >>> be discarded
> >>>> +         * in order to change the watermark levels as per the
> >>> optimization. Hence the
> >>>> +         * subsequent async flips will actually do the
> >>>> +asynchronous
> >>> flips.
> >>>> +         */
> >>>> +        ret = drmModePageFlip(data->drm_fd, data->output-
> >>>> config.crtc->crtc_id,
> >>>> +                              data->big_fb_flip[i].fb_id,
> >>>> +
> >>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
> >>>> +        igt_wait_for_vblank(data->drm_fd, data-
> >>>> display.pipes[primary->pipe->pipe].crtc_offset);
> >>>> +        frame = kmstest_get_vblank(data->drm_fd, data->pipe, 0) +
> >>> 1;
> >>>
> >>> Hi,
> >>>
> >>> Should this be added inside a gen check similar to kms_async_flips?
> >> Yes sorry missed it!
> >>
> >>>>            for (int j = 0; j < 2; j++) {
> >>>>                do {
> >>>> @@ -528,23 +540,20 @@ max_hw_stride_async_flip_test(data_t
> *data)
> >>>>
> >>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
> >>>>                } while (ret == -EBUSY);
> >>>>                igt_assert(ret == 0);
> >>>> +            igt_pipe_crc_get_for_frame(data->drm_fd, data-
> >>>> pipe_crc,
> >>>> +                       frame, &compare_crc);
> >>>>
> >>>> +            frame = kmstest_get_vblank(data->drm_fd, data-
> >>>> pipe, 0) + 1;
> >>>>                do {
> >>>>                    ret = drmModePageFlip(data->drm_fd, data-
> >>>> output->config.crtc->crtc_id,
> >>>>                                  data->big_fb.fb_id,
> >>>>
> >>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
> >>>>                } while (ret == -EBUSY);
> >>>>                igt_assert(ret == 0);
> >>>> +            igt_pipe_crc_get_for_frame(data->drm_fd, data-
> >>>> pipe_crc,
> >>>> +                       frame, &async_crc);
> >>> We should be moving this IMHO. By waiting for vblank after each
> >>> async flip to capture CRC, what is the intended result? Seems to be
> >>> completely changing the existing test logic.
> >> We are getting the vblank count and based on that getting the crc.
> >> Now we know for async flip at certain times it can consume a time
> >> equivalent to a vblank period. So in those scenarios getting crc
> >> based on the vblank goes for a toss. Hence capturing the vblank start
> >> time stamp at the beginning of each flip.
> >
> > Hi,
> >
> > But what is the the reference CRC we're expecting? The original logic
> > is designed to match on one iteration and mismatch on the next using a
> > combination of fb's by using async flips. But with these changes that
> > whole logic goes for a toss?
> >
> >>
> >>> Also, seems like we are overwriting the CRC captured for j = 0, as
> >>> comparison is done outside this loop. Is this done on purpose?
> >> Now with the changing the vblank start frame capture being added
> >> before the async flip, CRC can be captured outside the loop as well,
> >> but makes no sense. To maintain this order moving the CRC Capture
> >> also after each frame.
> >
> > The CRC comparison is still outside the loop, so no point capturing
> > CRC's if we finally discard it anyway?
> >
> 
> I think generally the idea Arun is changing is correct but he's missed how the
> test work.
> 
> I see there's Ville's change on kernel side for display_ver >=13 first async_flip
> is unconditionally (intentionally) missed, this is at
> intel_plane_do_async_flip(..) so this test will need adjustment
> 
> What Arun seem to have missed is on test those nested loops how they
> work, that part probably should've originally been commented in code bit
> better.
> 
> On original code there's after loop for j two time
> igt_pipe_crc_get_for_frame(..), first will capture crc from duration of loop of
> j, second will *wait* and capture current crc while there's framebuffer
> "big_fb" on screen (wait is about 1,5 frames). Inside j loop, against i is async
> flipped with fb from "big_fb_flip[i]" where one one fb look exactly like
> "big_fb" and check with this crc doesn't change when flip with same content.
> Then another "big_fb_flip[i]" is green color and check crc will change.
> 
> Now when inside "j" loop Arun added igt_pipe_crc_get_for_frame(..) this test
> becomes completely different because async flipping no more is tested do
> perform back'n'forth flipping.
> 

Thanks for your comments JP, atleast its clear that this fix is required. But as commented
I am not aware of the concept behind this test, It would be better if someone can take up this
fix and correct the CRC capture sequence as well.

Thanks and Regards,
Arun R Murthy
--------------------

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

* Re: [igt-dev] [PATCH i-g-t] tests/i915/kms_big_fb: trigger async flip with a dummy flip
@ 2022-07-05 10:28           ` Murthy, Arun R
  0 siblings, 0 replies; 22+ messages in thread
From: Murthy, Arun R @ 2022-07-05 10:28 UTC (permalink / raw)
  To: Heikkila, Juha-pekka, B S, Karthik, igt-dev; +Cc: intel-gfx

> On 5.7.2022 12.49, Karthik B S wrote:
> > On 7/5/2022 3:08 PM, Murthy, Arun R wrote:
> >>> On 6/28/2022 4:34 PM, Arun R Murthy wrote:
> >>>> In oder to trigger the async flip, a dummy flip is required after
> >>>> sync flip so as to update the watermarks for async in KMD which
> >>>> happens as part of this dummy flip. Thereafter async memory update
> >>>> will act as a trigger register.
> >>>> Capturing the CRC is done after the async flip as async flip at
> >>>> some times can consume fairly a vblank period time.
> >>>>
> >>>> Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
> >>>> ---
> >>>>    tests/i915/kms_big_fb.c | 29 +++++++++++++++++++----------
> >>>>    1 file changed, 19 insertions(+), 10 deletions(-)
> >>>>
> >>>> diff --git a/tests/i915/kms_big_fb.c b/tests/i915/kms_big_fb.c
> >>>> index
> >>>> d50fde45..6caf3c31 100644
> >>>> --- a/tests/i915/kms_big_fb.c
> >>>> +++ b/tests/i915/kms_big_fb.c
> >>>> @@ -465,7 +465,7 @@ static bool test_pipe(data_t *data)
> >>>>    static bool
> >>>>    max_hw_stride_async_flip_test(data_t *data)
> >>>>    {
> >>>> -    uint32_t ret, startframe;
> >>>> +    uint32_t ret, frame;
> >>>>        const uint32_t w =
> >>>> data->output->config.default_mode.hdisplay,
> >>>>                   h = data->output->config.default_mode.vdisplay;
> >>>>        igt_plane_t *primary;
> >>>> @@ -519,7 +519,19 @@ max_hw_stride_async_flip_test(data_t *data)
> >>>>
> >>> DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
> >>>>            igt_wait_for_vblank(data->drm_fd, data-
> >>>> display.pipes[primary->pipe->pipe].crtc_offset);
> >>>> -        startframe = kmstest_get_vblank(data->drm_fd, data->pipe,
> >>> 0) + 1;
> >>>> +        /*
> >>>> +         * In older platforms (<= Gen10), async address update bit
> >>>> +is
> >>> double buffered.
> >>>> +         * So flip timestamp can be verified only from the second
> >>>> flip.
> >>>> +         * The first async flip just enables the async address update.
> >>>> +         * In platforms greater than DISPLAY13 the first async
> >>>> +flip
> >>>> will
> >>> be discarded
> >>>> +         * in order to change the watermark levels as per the
> >>> optimization. Hence the
> >>>> +         * subsequent async flips will actually do the
> >>>> +asynchronous
> >>> flips.
> >>>> +         */
> >>>> +        ret = drmModePageFlip(data->drm_fd, data->output-
> >>>> config.crtc->crtc_id,
> >>>> +                              data->big_fb_flip[i].fb_id,
> >>>> +
> >>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
> >>>> +        igt_wait_for_vblank(data->drm_fd, data-
> >>>> display.pipes[primary->pipe->pipe].crtc_offset);
> >>>> +        frame = kmstest_get_vblank(data->drm_fd, data->pipe, 0) +
> >>> 1;
> >>>
> >>> Hi,
> >>>
> >>> Should this be added inside a gen check similar to kms_async_flips?
> >> Yes sorry missed it!
> >>
> >>>>            for (int j = 0; j < 2; j++) {
> >>>>                do {
> >>>> @@ -528,23 +540,20 @@ max_hw_stride_async_flip_test(data_t
> *data)
> >>>>
> >>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
> >>>>                } while (ret == -EBUSY);
> >>>>                igt_assert(ret == 0);
> >>>> +            igt_pipe_crc_get_for_frame(data->drm_fd, data-
> >>>> pipe_crc,
> >>>> +                       frame, &compare_crc);
> >>>>
> >>>> +            frame = kmstest_get_vblank(data->drm_fd, data-
> >>>> pipe, 0) + 1;
> >>>>                do {
> >>>>                    ret = drmModePageFlip(data->drm_fd, data-
> >>>> output->config.crtc->crtc_id,
> >>>>                                  data->big_fb.fb_id,
> >>>>
> >>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
> >>>>                } while (ret == -EBUSY);
> >>>>                igt_assert(ret == 0);
> >>>> +            igt_pipe_crc_get_for_frame(data->drm_fd, data-
> >>>> pipe_crc,
> >>>> +                       frame, &async_crc);
> >>> We should be moving this IMHO. By waiting for vblank after each
> >>> async flip to capture CRC, what is the intended result? Seems to be
> >>> completely changing the existing test logic.
> >> We are getting the vblank count and based on that getting the crc.
> >> Now we know for async flip at certain times it can consume a time
> >> equivalent to a vblank period. So in those scenarios getting crc
> >> based on the vblank goes for a toss. Hence capturing the vblank start
> >> time stamp at the beginning of each flip.
> >
> > Hi,
> >
> > But what is the the reference CRC we're expecting? The original logic
> > is designed to match on one iteration and mismatch on the next using a
> > combination of fb's by using async flips. But with these changes that
> > whole logic goes for a toss?
> >
> >>
> >>> Also, seems like we are overwriting the CRC captured for j = 0, as
> >>> comparison is done outside this loop. Is this done on purpose?
> >> Now with the changing the vblank start frame capture being added
> >> before the async flip, CRC can be captured outside the loop as well,
> >> but makes no sense. To maintain this order moving the CRC Capture
> >> also after each frame.
> >
> > The CRC comparison is still outside the loop, so no point capturing
> > CRC's if we finally discard it anyway?
> >
> 
> I think generally the idea Arun is changing is correct but he's missed how the
> test work.
> 
> I see there's Ville's change on kernel side for display_ver >=13 first async_flip
> is unconditionally (intentionally) missed, this is at
> intel_plane_do_async_flip(..) so this test will need adjustment
> 
> What Arun seem to have missed is on test those nested loops how they
> work, that part probably should've originally been commented in code bit
> better.
> 
> On original code there's after loop for j two time
> igt_pipe_crc_get_for_frame(..), first will capture crc from duration of loop of
> j, second will *wait* and capture current crc while there's framebuffer
> "big_fb" on screen (wait is about 1,5 frames). Inside j loop, against i is async
> flipped with fb from "big_fb_flip[i]" where one one fb look exactly like
> "big_fb" and check with this crc doesn't change when flip with same content.
> Then another "big_fb_flip[i]" is green color and check crc will change.
> 
> Now when inside "j" loop Arun added igt_pipe_crc_get_for_frame(..) this test
> becomes completely different because async flipping no more is tested do
> perform back'n'forth flipping.
> 

Thanks for your comments JP, atleast its clear that this fix is required. But as commented
I am not aware of the concept behind this test, It would be better if someone can take up this
fix and correct the CRC capture sequence as well.

Thanks and Regards,
Arun R Murthy
--------------------

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

* Re: [Intel-gfx] [PATCH i-g-t] tests/i915/kms_big_fb: trigger async flip with a dummy flip
  2022-07-05 10:28           ` [igt-dev] " Murthy, Arun R
@ 2022-07-05 10:58             ` Juha-Pekka Heikkila
  -1 siblings, 0 replies; 22+ messages in thread
From: Juha-Pekka Heikkila @ 2022-07-05 10:58 UTC (permalink / raw)
  To: Murthy, Arun R, B S, Karthik, igt-dev; +Cc: intel-gfx

Hi,

On 5.7.2022 13.28, Murthy, Arun R wrote:
>> On 5.7.2022 12.49, Karthik B S wrote:
>>> On 7/5/2022 3:08 PM, Murthy, Arun R wrote:
>>>>> On 6/28/2022 4:34 PM, Arun R Murthy wrote:
>>>>>> In oder to trigger the async flip, a dummy flip is required after
>>>>>> sync flip so as to update the watermarks for async in KMD which
>>>>>> happens as part of this dummy flip. Thereafter async memory update
>>>>>> will act as a trigger register.
>>>>>> Capturing the CRC is done after the async flip as async flip at
>>>>>> some times can consume fairly a vblank period time.
>>>>>>
>>>>>> Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
>>>>>> ---
>>>>>>     tests/i915/kms_big_fb.c | 29 +++++++++++++++++++----------
>>>>>>     1 file changed, 19 insertions(+), 10 deletions(-)
>>>>>>
>>>>>> diff --git a/tests/i915/kms_big_fb.c b/tests/i915/kms_big_fb.c
>>>>>> index
>>>>>> d50fde45..6caf3c31 100644
>>>>>> --- a/tests/i915/kms_big_fb.c
>>>>>> +++ b/tests/i915/kms_big_fb.c
>>>>>> @@ -465,7 +465,7 @@ static bool test_pipe(data_t *data)
>>>>>>     static bool
>>>>>>     max_hw_stride_async_flip_test(data_t *data)
>>>>>>     {
>>>>>> -    uint32_t ret, startframe;
>>>>>> +    uint32_t ret, frame;
>>>>>>         const uint32_t w =
>>>>>> data->output->config.default_mode.hdisplay,
>>>>>>                    h = data->output->config.default_mode.vdisplay;
>>>>>>         igt_plane_t *primary;
>>>>>> @@ -519,7 +519,19 @@ max_hw_stride_async_flip_test(data_t *data)
>>>>>>
>>>>> DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
>>>>>>             igt_wait_for_vblank(data->drm_fd, data-
>>>>>> display.pipes[primary->pipe->pipe].crtc_offset);
>>>>>> -        startframe = kmstest_get_vblank(data->drm_fd, data->pipe,
>>>>> 0) + 1;
>>>>>> +        /*
>>>>>> +         * In older platforms (<= Gen10), async address update bit
>>>>>> +is
>>>>> double buffered.
>>>>>> +         * So flip timestamp can be verified only from the second
>>>>>> flip.
>>>>>> +         * The first async flip just enables the async address update.
>>>>>> +         * In platforms greater than DISPLAY13 the first async
>>>>>> +flip
>>>>>> will
>>>>> be discarded
>>>>>> +         * in order to change the watermark levels as per the
>>>>> optimization. Hence the
>>>>>> +         * subsequent async flips will actually do the
>>>>>> +asynchronous
>>>>> flips.
>>>>>> +         */
>>>>>> +        ret = drmModePageFlip(data->drm_fd, data->output-
>>>>>> config.crtc->crtc_id,
>>>>>> +                              data->big_fb_flip[i].fb_id,
>>>>>> +
>>>>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>>>>>> +        igt_wait_for_vblank(data->drm_fd, data-
>>>>>> display.pipes[primary->pipe->pipe].crtc_offset);
>>>>>> +        frame = kmstest_get_vblank(data->drm_fd, data->pipe, 0) +
>>>>> 1;
>>>>>
>>>>> Hi,
>>>>>
>>>>> Should this be added inside a gen check similar to kms_async_flips?
>>>> Yes sorry missed it!
>>>>
>>>>>>             for (int j = 0; j < 2; j++) {
>>>>>>                 do {
>>>>>> @@ -528,23 +540,20 @@ max_hw_stride_async_flip_test(data_t
>> *data)
>>>>>>
>>>>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>>>>>>                 } while (ret == -EBUSY);
>>>>>>                 igt_assert(ret == 0);
>>>>>> +            igt_pipe_crc_get_for_frame(data->drm_fd, data-
>>>>>> pipe_crc,
>>>>>> +                       frame, &compare_crc);
>>>>>>
>>>>>> +            frame = kmstest_get_vblank(data->drm_fd, data-
>>>>>> pipe, 0) + 1;
>>>>>>                 do {
>>>>>>                     ret = drmModePageFlip(data->drm_fd, data-
>>>>>> output->config.crtc->crtc_id,
>>>>>>                                   data->big_fb.fb_id,
>>>>>>
>>>>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>>>>>>                 } while (ret == -EBUSY);
>>>>>>                 igt_assert(ret == 0);
>>>>>> +            igt_pipe_crc_get_for_frame(data->drm_fd, data-
>>>>>> pipe_crc,
>>>>>> +                       frame, &async_crc);
>>>>> We should be moving this IMHO. By waiting for vblank after each
>>>>> async flip to capture CRC, what is the intended result? Seems to be
>>>>> completely changing the existing test logic.
>>>> We are getting the vblank count and based on that getting the crc.
>>>> Now we know for async flip at certain times it can consume a time
>>>> equivalent to a vblank period. So in those scenarios getting crc
>>>> based on the vblank goes for a toss. Hence capturing the vblank start
>>>> time stamp at the beginning of each flip.
>>>
>>> Hi,
>>>
>>> But what is the the reference CRC we're expecting? The original logic
>>> is designed to match on one iteration and mismatch on the next using a
>>> combination of fb's by using async flips. But with these changes that
>>> whole logic goes for a toss?
>>>
>>>>
>>>>> Also, seems like we are overwriting the CRC captured for j = 0, as
>>>>> comparison is done outside this loop. Is this done on purpose?
>>>> Now with the changing the vblank start frame capture being added
>>>> before the async flip, CRC can be captured outside the loop as well,
>>>> but makes no sense. To maintain this order moving the CRC Capture
>>>> also after each frame.
>>>
>>> The CRC comparison is still outside the loop, so no point capturing
>>> CRC's if we finally discard it anyway?
>>>
>>
>> I think generally the idea Arun is changing is correct but he's missed how the
>> test work.
>>
>> I see there's Ville's change on kernel side for display_ver >=13 first async_flip
>> is unconditionally (intentionally) missed, this is at
>> intel_plane_do_async_flip(..) so this test will need adjustment
>>
>> What Arun seem to have missed is on test those nested loops how they
>> work, that part probably should've originally been commented in code bit
>> better.
>>
>> On original code there's after loop for j two time
>> igt_pipe_crc_get_for_frame(..), first will capture crc from duration of loop of
>> j, second will *wait* and capture current crc while there's framebuffer
>> "big_fb" on screen (wait is about 1,5 frames). Inside j loop, against i is async
>> flipped with fb from "big_fb_flip[i]" where one one fb look exactly like
>> "big_fb" and check with this crc doesn't change when flip with same content.
>> Then another "big_fb_flip[i]" is green color and check crc will change.
>>
>> Now when inside "j" loop Arun added igt_pipe_crc_get_for_frame(..) this test
>> becomes completely different because async flipping no more is tested do
>> perform back'n'forth flipping.
>>
> 
> Thanks for your comments JP, atleast its clear that this fix is required. But as commented
> I am not aware of the concept behind this test, It would be better if someone can take up this
> fix and correct the CRC capture sequence as well.

I think you are on the right track, just those inner loops are now 
mishandled.

I suspect you'd get effect you are after with something like below 
diff(totally untested). What the essential change is I added into that 
inner loop one extra async flip to "big_fb" in the beginning with hope 
that'll take care of display_ver>=13 .. but this change will invalidate 
"startframe" on display_ver>=13 so instead of get crc for chosen frames, 
drain crcs away before test and then get single crc two times. With this 
change probably that assert for "lost frames" will need to be adjusted 
too or just throw away. ..and you may need to add one extra 
igt_pipe_crc_get_single(..) before those two which will get the actual 
test crcs.

/Juha-Pekka


diff --git a/tests/i915/kms_big_fb.c b/tests/i915/kms_big_fb.c
index d50fde45..edcceaf1 100644
--- a/tests/i915/kms_big_fb.c
+++ b/tests/i915/kms_big_fb.c
@@ -518,10 +518,17 @@ max_hw_stride_async_flip_test(data_t *data)
                 igt_display_commit_atomic(&data->display,
 
DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);

+               igt_pipe_crc_drain(data->pipe_crc);
                 igt_wait_for_vblank(data->drm_fd, 
data->display.pipes[primary->pipe->pipe].crtc_offset);
                 startframe = kmstest_get_vblank(data->drm_fd, 
data->pipe, 0) + 1;

                 for (int j = 0; j < 2; j++) {
+                       do {
+                               ret = drmModePageFlip(data->drm_fd, 
data->output->config.crtc->crtc_id,
+                                                     data->big_fb.fb_id,
+ 
DRM_MODE_PAGE_FLIP_ASYNC, NULL);
+                       } while (ret == -EBUSY);
+
                         do {
                                 ret = drmModePageFlip(data->drm_fd, 
data->output->config.crtc->crtc_id,
 
data->big_fb_flip[i].fb_id,
@@ -537,10 +544,8 @@ max_hw_stride_async_flip_test(data_t *data)
                         igt_assert(ret == 0);
                 }

-               igt_pipe_crc_get_for_frame(data->drm_fd, data->pipe_crc,
-                                          startframe, &compare_crc);
-               igt_pipe_crc_get_for_frame(data->drm_fd, data->pipe_crc,
-                                          startframe + 1, &async_crc);
+               igt_pipe_crc_get_single(data->pipe_crc, &compare_crc);
+               igt_pipe_crc_get_single(data->pipe_crc, &async_crc);

                 igt_assert_f(kmstest_get_vblank(data->drm_fd, 
data->pipe, 0) -
                              startframe == 1, "lost frames\n");

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

* Re: [igt-dev] [PATCH i-g-t] tests/i915/kms_big_fb: trigger async flip with a dummy flip
@ 2022-07-05 10:58             ` Juha-Pekka Heikkila
  0 siblings, 0 replies; 22+ messages in thread
From: Juha-Pekka Heikkila @ 2022-07-05 10:58 UTC (permalink / raw)
  To: Murthy, Arun R, B S, Karthik, igt-dev; +Cc: intel-gfx

Hi,

On 5.7.2022 13.28, Murthy, Arun R wrote:
>> On 5.7.2022 12.49, Karthik B S wrote:
>>> On 7/5/2022 3:08 PM, Murthy, Arun R wrote:
>>>>> On 6/28/2022 4:34 PM, Arun R Murthy wrote:
>>>>>> In oder to trigger the async flip, a dummy flip is required after
>>>>>> sync flip so as to update the watermarks for async in KMD which
>>>>>> happens as part of this dummy flip. Thereafter async memory update
>>>>>> will act as a trigger register.
>>>>>> Capturing the CRC is done after the async flip as async flip at
>>>>>> some times can consume fairly a vblank period time.
>>>>>>
>>>>>> Signed-off-by: Arun R Murthy <arun.r.murthy@intel.com>
>>>>>> ---
>>>>>>     tests/i915/kms_big_fb.c | 29 +++++++++++++++++++----------
>>>>>>     1 file changed, 19 insertions(+), 10 deletions(-)
>>>>>>
>>>>>> diff --git a/tests/i915/kms_big_fb.c b/tests/i915/kms_big_fb.c
>>>>>> index
>>>>>> d50fde45..6caf3c31 100644
>>>>>> --- a/tests/i915/kms_big_fb.c
>>>>>> +++ b/tests/i915/kms_big_fb.c
>>>>>> @@ -465,7 +465,7 @@ static bool test_pipe(data_t *data)
>>>>>>     static bool
>>>>>>     max_hw_stride_async_flip_test(data_t *data)
>>>>>>     {
>>>>>> -    uint32_t ret, startframe;
>>>>>> +    uint32_t ret, frame;
>>>>>>         const uint32_t w =
>>>>>> data->output->config.default_mode.hdisplay,
>>>>>>                    h = data->output->config.default_mode.vdisplay;
>>>>>>         igt_plane_t *primary;
>>>>>> @@ -519,7 +519,19 @@ max_hw_stride_async_flip_test(data_t *data)
>>>>>>
>>>>> DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);
>>>>>>             igt_wait_for_vblank(data->drm_fd, data-
>>>>>> display.pipes[primary->pipe->pipe].crtc_offset);
>>>>>> -        startframe = kmstest_get_vblank(data->drm_fd, data->pipe,
>>>>> 0) + 1;
>>>>>> +        /*
>>>>>> +         * In older platforms (<= Gen10), async address update bit
>>>>>> +is
>>>>> double buffered.
>>>>>> +         * So flip timestamp can be verified only from the second
>>>>>> flip.
>>>>>> +         * The first async flip just enables the async address update.
>>>>>> +         * In platforms greater than DISPLAY13 the first async
>>>>>> +flip
>>>>>> will
>>>>> be discarded
>>>>>> +         * in order to change the watermark levels as per the
>>>>> optimization. Hence the
>>>>>> +         * subsequent async flips will actually do the
>>>>>> +asynchronous
>>>>> flips.
>>>>>> +         */
>>>>>> +        ret = drmModePageFlip(data->drm_fd, data->output-
>>>>>> config.crtc->crtc_id,
>>>>>> +                              data->big_fb_flip[i].fb_id,
>>>>>> +
>>>>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>>>>>> +        igt_wait_for_vblank(data->drm_fd, data-
>>>>>> display.pipes[primary->pipe->pipe].crtc_offset);
>>>>>> +        frame = kmstest_get_vblank(data->drm_fd, data->pipe, 0) +
>>>>> 1;
>>>>>
>>>>> Hi,
>>>>>
>>>>> Should this be added inside a gen check similar to kms_async_flips?
>>>> Yes sorry missed it!
>>>>
>>>>>>             for (int j = 0; j < 2; j++) {
>>>>>>                 do {
>>>>>> @@ -528,23 +540,20 @@ max_hw_stride_async_flip_test(data_t
>> *data)
>>>>>>
>>>>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>>>>>>                 } while (ret == -EBUSY);
>>>>>>                 igt_assert(ret == 0);
>>>>>> +            igt_pipe_crc_get_for_frame(data->drm_fd, data-
>>>>>> pipe_crc,
>>>>>> +                       frame, &compare_crc);
>>>>>>
>>>>>> +            frame = kmstest_get_vblank(data->drm_fd, data-
>>>>>> pipe, 0) + 1;
>>>>>>                 do {
>>>>>>                     ret = drmModePageFlip(data->drm_fd, data-
>>>>>> output->config.crtc->crtc_id,
>>>>>>                                   data->big_fb.fb_id,
>>>>>>
>>>>> DRM_MODE_PAGE_FLIP_ASYNC, NULL);
>>>>>>                 } while (ret == -EBUSY);
>>>>>>                 igt_assert(ret == 0);
>>>>>> +            igt_pipe_crc_get_for_frame(data->drm_fd, data-
>>>>>> pipe_crc,
>>>>>> +                       frame, &async_crc);
>>>>> We should be moving this IMHO. By waiting for vblank after each
>>>>> async flip to capture CRC, what is the intended result? Seems to be
>>>>> completely changing the existing test logic.
>>>> We are getting the vblank count and based on that getting the crc.
>>>> Now we know for async flip at certain times it can consume a time
>>>> equivalent to a vblank period. So in those scenarios getting crc
>>>> based on the vblank goes for a toss. Hence capturing the vblank start
>>>> time stamp at the beginning of each flip.
>>>
>>> Hi,
>>>
>>> But what is the the reference CRC we're expecting? The original logic
>>> is designed to match on one iteration and mismatch on the next using a
>>> combination of fb's by using async flips. But with these changes that
>>> whole logic goes for a toss?
>>>
>>>>
>>>>> Also, seems like we are overwriting the CRC captured for j = 0, as
>>>>> comparison is done outside this loop. Is this done on purpose?
>>>> Now with the changing the vblank start frame capture being added
>>>> before the async flip, CRC can be captured outside the loop as well,
>>>> but makes no sense. To maintain this order moving the CRC Capture
>>>> also after each frame.
>>>
>>> The CRC comparison is still outside the loop, so no point capturing
>>> CRC's if we finally discard it anyway?
>>>
>>
>> I think generally the idea Arun is changing is correct but he's missed how the
>> test work.
>>
>> I see there's Ville's change on kernel side for display_ver >=13 first async_flip
>> is unconditionally (intentionally) missed, this is at
>> intel_plane_do_async_flip(..) so this test will need adjustment
>>
>> What Arun seem to have missed is on test those nested loops how they
>> work, that part probably should've originally been commented in code bit
>> better.
>>
>> On original code there's after loop for j two time
>> igt_pipe_crc_get_for_frame(..), first will capture crc from duration of loop of
>> j, second will *wait* and capture current crc while there's framebuffer
>> "big_fb" on screen (wait is about 1,5 frames). Inside j loop, against i is async
>> flipped with fb from "big_fb_flip[i]" where one one fb look exactly like
>> "big_fb" and check with this crc doesn't change when flip with same content.
>> Then another "big_fb_flip[i]" is green color and check crc will change.
>>
>> Now when inside "j" loop Arun added igt_pipe_crc_get_for_frame(..) this test
>> becomes completely different because async flipping no more is tested do
>> perform back'n'forth flipping.
>>
> 
> Thanks for your comments JP, atleast its clear that this fix is required. But as commented
> I am not aware of the concept behind this test, It would be better if someone can take up this
> fix and correct the CRC capture sequence as well.

I think you are on the right track, just those inner loops are now 
mishandled.

I suspect you'd get effect you are after with something like below 
diff(totally untested). What the essential change is I added into that 
inner loop one extra async flip to "big_fb" in the beginning with hope 
that'll take care of display_ver>=13 .. but this change will invalidate 
"startframe" on display_ver>=13 so instead of get crc for chosen frames, 
drain crcs away before test and then get single crc two times. With this 
change probably that assert for "lost frames" will need to be adjusted 
too or just throw away. ..and you may need to add one extra 
igt_pipe_crc_get_single(..) before those two which will get the actual 
test crcs.

/Juha-Pekka


diff --git a/tests/i915/kms_big_fb.c b/tests/i915/kms_big_fb.c
index d50fde45..edcceaf1 100644
--- a/tests/i915/kms_big_fb.c
+++ b/tests/i915/kms_big_fb.c
@@ -518,10 +518,17 @@ max_hw_stride_async_flip_test(data_t *data)
                 igt_display_commit_atomic(&data->display,
 
DRM_MODE_ATOMIC_ALLOW_MODESET, NULL);

+               igt_pipe_crc_drain(data->pipe_crc);
                 igt_wait_for_vblank(data->drm_fd, 
data->display.pipes[primary->pipe->pipe].crtc_offset);
                 startframe = kmstest_get_vblank(data->drm_fd, 
data->pipe, 0) + 1;

                 for (int j = 0; j < 2; j++) {
+                       do {
+                               ret = drmModePageFlip(data->drm_fd, 
data->output->config.crtc->crtc_id,
+                                                     data->big_fb.fb_id,
+ 
DRM_MODE_PAGE_FLIP_ASYNC, NULL);
+                       } while (ret == -EBUSY);
+
                         do {
                                 ret = drmModePageFlip(data->drm_fd, 
data->output->config.crtc->crtc_id,
 
data->big_fb_flip[i].fb_id,
@@ -537,10 +544,8 @@ max_hw_stride_async_flip_test(data_t *data)
                         igt_assert(ret == 0);
                 }

-               igt_pipe_crc_get_for_frame(data->drm_fd, data->pipe_crc,
-                                          startframe, &compare_crc);
-               igt_pipe_crc_get_for_frame(data->drm_fd, data->pipe_crc,
-                                          startframe + 1, &async_crc);
+               igt_pipe_crc_get_single(data->pipe_crc, &compare_crc);
+               igt_pipe_crc_get_single(data->pipe_crc, &async_crc);

                 igt_assert_f(kmstest_get_vblank(data->drm_fd, 
data->pipe, 0) -
                              startframe == 1, "lost frames\n");

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

* [igt-dev] ✗ Fi.CI.BUILD: failure for tests/i915/kms_big_fb: trigger async flip with a dummy flip (rev3)
  2022-06-28 11:04 ` [igt-dev] " Arun R Murthy
                   ` (6 preceding siblings ...)
  (?)
@ 2022-07-05 13:07 ` Patchwork
  -1 siblings, 0 replies; 22+ messages in thread
From: Patchwork @ 2022-07-05 13:07 UTC (permalink / raw)
  To: Juha-Pekka Heikkila; +Cc: igt-dev

== Series Details ==

Series: tests/i915/kms_big_fb: trigger async flip with a dummy flip (rev3)
URL   : https://patchwork.freedesktop.org/series/105726/
State : failure

== Summary ==

Applying: tests/i915/kms_big_fb: trigger async flip with a dummy flip
Patch failed at 0001 tests/i915/kms_big_fb: trigger async flip with a dummy flip
When you have resolved this problem, run "git am --continue".
If you prefer to skip this patch, run "git am --skip" instead.
To restore the original branch and stop patching, run "git am --abort".


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

end of thread, other threads:[~2022-07-05 13:07 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-28 11:04 [Intel-gfx] [PATCH i-g-t] tests/i915/kms_big_fb: trigger async flip with a dummy flip Arun R Murthy
2022-06-28 11:04 ` [igt-dev] " Arun R Murthy
2022-06-28 13:11 ` [igt-dev] ✗ GitLab.Pipeline: warning for " Patchwork
2022-06-28 13:37 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
2022-06-29  5:26 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
2022-07-04  8:29 ` [igt-dev] ✓ Fi.CI.BAT: success for tests/i915/kms_big_fb: trigger async flip with a dummy flip (rev2) Patchwork
2022-07-04 10:18 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2022-07-05  9:27 ` [Intel-gfx] [PATCH i-g-t] tests/i915/kms_big_fb: trigger async flip with a dummy flip Karthik B S
2022-07-05  9:27   ` [igt-dev] " Karthik B S
2022-07-05  9:38   ` [Intel-gfx] " Murthy, Arun R
2022-07-05  9:38     ` [igt-dev] " Murthy, Arun R
2022-07-05  9:49     ` [Intel-gfx] " Karthik B S
2022-07-05  9:49       ` [igt-dev] " Karthik B S
2022-07-05 10:16       ` [Intel-gfx] " Murthy, Arun R
2022-07-05 10:16         ` [igt-dev] " Murthy, Arun R
2022-07-05 10:22       ` [Intel-gfx] " Juha-Pekka Heikkilä
2022-07-05 10:22         ` [igt-dev] " Juha-Pekka Heikkilä
2022-07-05 10:28         ` [Intel-gfx] " Murthy, Arun R
2022-07-05 10:28           ` [igt-dev] " Murthy, Arun R
2022-07-05 10:58           ` [Intel-gfx] " Juha-Pekka Heikkila
2022-07-05 10:58             ` [igt-dev] " Juha-Pekka Heikkila
2022-07-05 13:07 ` [igt-dev] ✗ Fi.CI.BUILD: failure for tests/i915/kms_big_fb: trigger async flip with a dummy flip (rev3) Patchwork

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.