All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t 1/2] lib/i915/mocs: Move mocs library to 'lib' folder
@ 2023-06-09 13:01 Christoph Manszewski
  2023-06-09 13:01 ` [igt-dev] [PATCH i-g-t 2/2] lib/[gpu_cmds|intel_bufops]: Enable surface state mocs setting Christoph Manszewski
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Christoph Manszewski @ 2023-06-09 13:01 UTC (permalink / raw)
  To: igt-dev

Since mocs are driver agnostic and are currently used in driver agnostic
code, move them to the 'lib' folder and get rid of i915 references.

Signed-off-by: Christoph Manszewski <christoph.manszewski@intel.com>
---
 lib/igt_draw.c                 | 2 +-
 lib/{i915 => }/intel_mocs.c    | 9 ++++-----
 lib/{i915 => }/intel_mocs.h    | 0
 lib/meson.build                | 2 +-
 tests/i915/gem_ccs.c           | 2 +-
 tests/i915/gem_exercise_blt.c  | 2 +-
 tests/i915/gem_lmem_swapping.c | 2 +-
 7 files changed, 9 insertions(+), 10 deletions(-)
 rename lib/{i915 => }/intel_mocs.c (89%)
 rename lib/{i915 => }/intel_mocs.h (100%)

diff --git a/lib/igt_draw.c b/lib/igt_draw.c
index a5c0cbbf..6f362994 100644
--- a/lib/igt_draw.c
+++ b/lib/igt_draw.c
@@ -30,13 +30,13 @@
 #include "intel_bufops.h"
 #include "intel_batchbuffer.h"
 #include "intel_chipset.h"
+#include "intel_mocs.h"
 #include "igt_core.h"
 #include "igt_fb.h"
 #include "ioctl_wrappers.h"
 #include "i830_reg.h"
 #include "i915/gem_create.h"
 #include "i915/gem_mman.h"
-#include "i915/intel_mocs.h"
 #include "xe/xe_ioctl.h"
 #include "xe/xe_query.h"
 
diff --git a/lib/i915/intel_mocs.c b/lib/intel_mocs.c
similarity index 89%
rename from lib/i915/intel_mocs.c
rename to lib/intel_mocs.c
index 95f0fbde..cf3b8e4f 100644
--- a/lib/i915/intel_mocs.c
+++ b/lib/intel_mocs.c
@@ -4,7 +4,6 @@
  */
 
 #include "igt.h"
-#include "i915/gem.h"
 #include "intel_mocs.h"
 
 #define DG1_MOCS_UC_IDX				1
@@ -18,12 +17,12 @@
 #define XY_BLOCK_COPY_BLT_MOCS_SHIFT		21
 #define XY_CTRL_SURF_COPY_BLT_MOCS_SHIFT	25
 
-struct drm_i915_mocs_index {
+struct drm_intel_mocs_index {
 	uint8_t uc_index;
 	uint8_t wb_index;
 };
 
-static void get_mocs_index(int fd, struct drm_i915_mocs_index *mocs)
+static void get_mocs_index(int fd, struct drm_intel_mocs_index *mocs)
 {
 	uint16_t devid = intel_get_drm_devid(fd);
 
@@ -58,7 +57,7 @@ static void get_mocs_index(int fd, struct drm_i915_mocs_index *mocs)
 
 uint8_t intel_get_wb_mocs(int fd)
 {
-	struct drm_i915_mocs_index mocs;
+	struct drm_intel_mocs_index mocs;
 
 	get_mocs_index(fd, &mocs);
 	return mocs.wb_index << 1;
@@ -66,7 +65,7 @@ uint8_t intel_get_wb_mocs(int fd)
 
 uint8_t intel_get_uc_mocs(int fd)
 {
-	struct drm_i915_mocs_index mocs;
+	struct drm_intel_mocs_index mocs;
 
 	get_mocs_index(fd, &mocs);
 	return mocs.uc_index << 1;
diff --git a/lib/i915/intel_mocs.h b/lib/intel_mocs.h
similarity index 100%
rename from lib/i915/intel_mocs.h
rename to lib/intel_mocs.h
diff --git a/lib/meson.build b/lib/meson.build
index 55efdc83..ad5d999d 100644
--- a/lib/meson.build
+++ b/lib/meson.build
@@ -13,7 +13,6 @@ lib_sources = [
 	'i915/gem_vm.c',
 	'i915/intel_decode.c',
 	'i915/intel_memory_region.c',
-	'i915/intel_mocs.c',
 	'i915/intel_cmds_info.c',
 	'i915/i915_blt.c',
 	'i915/i915_crc.c',
@@ -60,6 +59,7 @@ lib_sources = [
 	'intel_ctx.c',
 	'intel_device_info.c',
 	'intel_mmio.c',
+	'intel_mocs.c',
 	'ioctl_wrappers.c',
 	'media_spin.c',
 	'media_fill.c',
diff --git a/tests/i915/gem_ccs.c b/tests/i915/gem_ccs.c
index ff6504b3..d38ab49a 100644
--- a/tests/i915/gem_ccs.c
+++ b/tests/i915/gem_ccs.c
@@ -14,7 +14,7 @@
 #include "i915/gem_create.h"
 #include "lib/intel_chipset.h"
 #include "i915/i915_blt.h"
-#include "i915/intel_mocs.h"
+#include "intel_mocs.h"
 /**
  * TEST: gem ccs
  * Description: Exercise gen12 blitter with and without flatccs compression
diff --git a/tests/i915/gem_exercise_blt.c b/tests/i915/gem_exercise_blt.c
index 3287ced7..89f89d21 100644
--- a/tests/i915/gem_exercise_blt.c
+++ b/tests/i915/gem_exercise_blt.c
@@ -9,7 +9,7 @@
 #include "i915/gem_create.h"
 #include "lib/intel_chipset.h"
 #include "i915/i915_blt.h"
-#include "i915/intel_mocs.h"
+#include "intel_mocs.h"
 /**
  * TEST: gem exercise blt
  * Description: Exercise blitter commands
diff --git a/tests/i915/gem_lmem_swapping.c b/tests/i915/gem_lmem_swapping.c
index 6f1340ba..8211edbe 100644
--- a/tests/i915/gem_lmem_swapping.c
+++ b/tests/i915/gem_lmem_swapping.c
@@ -23,7 +23,7 @@
 #include <sys/wait.h>
 #include "drm.h"
 #include "i915/i915_blt.h"
-#include "i915/intel_mocs.h"
+#include "intel_mocs.h"
 /**
  * TEST: gem lmem swapping
  * Description: Exercise local memory swapping.
-- 
2.40.1

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

* [igt-dev] [PATCH i-g-t 2/2] lib/[gpu_cmds|intel_bufops]: Enable surface state mocs setting.
  2023-06-09 13:01 [igt-dev] [PATCH i-g-t 1/2] lib/i915/mocs: Move mocs library to 'lib' folder Christoph Manszewski
@ 2023-06-09 13:01 ` Christoph Manszewski
  2023-06-12  5:28   ` Zbigniew Kempczyński
  2023-06-09 17:56 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/2] lib/i915/mocs: Move mocs library to 'lib' folder Patchwork
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 6+ messages in thread
From: Christoph Manszewski @ 2023-06-09 13:01 UTC (permalink / raw)
  To: igt-dev

Allow the user to control the setting of surface caching.
Add 'mocs' field to intel_buf structure and update the surface state
fill commands to use introduced filed.

Signed-off-by: Dominik Grzegorzek <dominik.grzegorzek@intel.com>
Signed-off-by: Christoph Manszewski <christoph.manszewski@intel.com>
---
 lib/gpu_cmds.c     | 19 +++++++++++++++++++
 lib/intel_bufops.c |  1 +
 lib/intel_bufops.h | 20 ++++++++++++++++++++
 3 files changed, 40 insertions(+)

diff --git a/lib/gpu_cmds.c b/lib/gpu_cmds.c
index 1f321ae4..aa4aa34d 100644
--- a/lib/gpu_cmds.c
+++ b/lib/gpu_cmds.c
@@ -23,6 +23,7 @@
  */
 
 #include "gpu_cmds.h"
+#include "intel_mocs.h"
 
 uint32_t
 gen7_fill_curbe_buffer_data(struct intel_bb *ibb, uint8_t color)
@@ -135,6 +136,7 @@ gen8_fill_surface_state(struct intel_bb *ibb,
 	struct gen8_surface_state *ss;
 	uint32_t write_domain, read_domain, offset;
 	uint64_t address;
+	enum intel_buf_mocs mocs = intel_buf_get_mocs(buf);
 
 	if (is_dst) {
 		write_domain = read_domain = I915_GEM_DOMAIN_RENDER;
@@ -154,6 +156,11 @@ gen8_fill_surface_state(struct intel_bb *ibb,
 	ss->ss0.vertical_alignment = 1; /* align 4 */
 	ss->ss0.horizontal_alignment = 1; /* align 4 */
 
+	if (mocs == INTEL_BUF_MOCS_UC)
+		ss->ss1.memory_object_control = intel_get_uc_mocs(ibb->fd);
+	else if (mocs == INTEL_BUF_MOCS_WB)
+		ss->ss1.memory_object_control = intel_get_wb_mocs(ibb->fd);
+
 	if (buf->tiling == I915_TILING_X)
 		ss->ss0.tiled_mode = 2;
 	else if (buf->tiling == I915_TILING_Y || buf->tiling == I915_TILING_4)
@@ -190,6 +197,7 @@ gen11_fill_surface_state(struct intel_bb *ibb,
 	struct gen8_surface_state *ss;
 	uint32_t write_domain, read_domain, offset;
 	uint64_t address;
+	enum intel_buf_mocs mocs = intel_buf_get_mocs(buf);
 
 	if (is_dst) {
 		write_domain = read_domain = I915_GEM_DOMAIN_RENDER;
@@ -209,6 +217,11 @@ gen11_fill_surface_state(struct intel_bb *ibb,
 	ss->ss0.vertical_alignment = vertical_alignment; /* align 4 */
 	ss->ss0.horizontal_alignment = horizontal_alignment; /* align 4 */
 
+	if (mocs == INTEL_BUF_MOCS_UC)
+		ss->ss1.memory_object_control = intel_get_uc_mocs(ibb->fd);
+	else if (mocs == INTEL_BUF_MOCS_WB)
+		ss->ss1.memory_object_control = intel_get_wb_mocs(ibb->fd);
+
 	if (buf->tiling == I915_TILING_X)
 		ss->ss0.tiled_mode = 2;
 	else if (buf->tiling == I915_TILING_Y || buf->tiling == I915_TILING_4)
@@ -817,6 +830,7 @@ xehp_fill_surface_state(struct intel_bb *ibb,
 	struct xehp_surface_state *ss;
 	uint32_t write_domain, read_domain, offset;
 	uint64_t address;
+	enum intel_buf_mocs mocs = intel_buf_get_mocs(buf);
 
 	if (is_dst) {
 		write_domain = read_domain = I915_GEM_DOMAIN_RENDER;
@@ -836,6 +850,11 @@ xehp_fill_surface_state(struct intel_bb *ibb,
 	ss->ss0.vertical_alignment = 1; /* align 4 */
 	ss->ss0.horizontal_alignment = 1; /* align 4 */
 
+	if (mocs == INTEL_BUF_MOCS_UC)
+		ss->ss1.memory_object_control = intel_get_uc_mocs(ibb->fd);
+	else if (mocs == INTEL_BUF_MOCS_WB)
+		ss->ss1.memory_object_control = intel_get_wb_mocs(ibb->fd);
+
 	if (buf->tiling == I915_TILING_X)
 		ss->ss0.tiled_mode = 2;
 	else if (buf->tiling == I915_TILING_Y || buf->tiling == I915_TILING_4)
diff --git a/lib/intel_bufops.c b/lib/intel_bufops.c
index 46fd981f..52475793 100644
--- a/lib/intel_bufops.c
+++ b/lib/intel_bufops.c
@@ -837,6 +837,7 @@ static void __intel_buf_init(struct buf_ops *bops,
 	buf->bops = bops;
 	buf->addr.offset = INTEL_BUF_INVALID_ADDRESS;
 	IGT_INIT_LIST_HEAD(&buf->link);
+	buf->mocs = INTEL_BUF_MOCS_DEFAULT;
 
 	if (compression) {
 		igt_require(bops->intel_gen >= 9);
diff --git a/lib/intel_bufops.h b/lib/intel_bufops.h
index 0037548a..4dfe4681 100644
--- a/lib/intel_bufops.h
+++ b/lib/intel_bufops.h
@@ -12,6 +12,12 @@ struct buf_ops;
 #define INTEL_BUF_NAME_MAXSIZE 32
 #define INVALID_ADDR(x) ((x) == INTEL_BUF_INVALID_ADDRESS)
 
+enum intel_buf_mocs {
+	INTEL_BUF_MOCS_DEFAULT,
+	INTEL_BUF_MOCS_UC,
+	INTEL_BUF_MOCS_WB,
+};
+
 struct intel_buf {
 	struct buf_ops *bops;
 
@@ -23,6 +29,7 @@ struct intel_buf {
 	uint32_t compression;
 	uint32_t swizzle_mode;
 	uint32_t yuv_semiplanar_bpp;
+	enum intel_buf_mocs mocs;
 	bool format_is_yuv;
 	bool format_is_yuv_semiplanar;
 	struct {
@@ -212,4 +219,17 @@ const char *intel_buf_set_name(struct intel_buf *buf, const char *name);
 void intel_buf_write_to_png(struct intel_buf *buf, const char *filename);
 void intel_buf_write_aux_to_png(struct intel_buf *buf, const char *filename);
 
+static inline enum intel_buf_mocs intel_buf_get_mocs(const struct intel_buf *buf)
+{
+	igt_assert(buf);
+	return buf->mocs;
+}
+
+static inline void intel_buf_set_mocs(struct intel_buf *buf,
+				      enum intel_buf_mocs mocs)
+{
+	igt_assert(buf);
+	buf->mocs = mocs;
+}
+
 #endif
-- 
2.40.1

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

* [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/2] lib/i915/mocs: Move mocs library to 'lib' folder
  2023-06-09 13:01 [igt-dev] [PATCH i-g-t 1/2] lib/i915/mocs: Move mocs library to 'lib' folder Christoph Manszewski
  2023-06-09 13:01 ` [igt-dev] [PATCH i-g-t 2/2] lib/[gpu_cmds|intel_bufops]: Enable surface state mocs setting Christoph Manszewski
@ 2023-06-09 17:56 ` Patchwork
  2023-06-11  2:25 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
  2023-06-12  5:25 ` [igt-dev] [PATCH i-g-t 1/2] " Zbigniew Kempczyński
  3 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2023-06-09 17:56 UTC (permalink / raw)
  To: Christoph Manszewski; +Cc: igt-dev

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

== Series Details ==

Series: series starting with [i-g-t,1/2] lib/i915/mocs: Move mocs library to 'lib' folder
URL   : https://patchwork.freedesktop.org/series/119139/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_13256 -> IGTPW_9142
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

Participating hosts (36 -> 35)
------------------------------

  Missing    (1): fi-pnv-d510 

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

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

### IGT changes ###

#### Issues hit ####

  * igt@i915_selftest@live@guc:
    - bat-rpls-2:         [PASS][1] -> [DMESG-WARN][2] ([i915#7852])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/bat-rpls-2/igt@i915_selftest@live@guc.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/bat-rpls-2/igt@i915_selftest@live@guc.html

  * igt@i915_selftest@live@workarounds:
    - bat-adlp-9:         [PASS][3] -> [INCOMPLETE][4] ([i915#4983] / [i915#7677] / [i915#7913])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/bat-adlp-9/igt@i915_selftest@live@workarounds.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/bat-adlp-9/igt@i915_selftest@live@workarounds.html

  
#### Possible fixes ####

  * igt@i915_selftest@live@gem_contexts:
    - {bat-mtlp-8}:       [ABORT][5] -> [PASS][6]
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/bat-mtlp-8/igt@i915_selftest@live@gem_contexts.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/bat-mtlp-8/igt@i915_selftest@live@gem_contexts.html

  * igt@i915_selftest@live@gt_pm:
    - bat-rpls-2:         [DMESG-FAIL][7] ([i915#4258] / [i915#7913]) -> [PASS][8]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/bat-rpls-2/igt@i915_selftest@live@gt_pm.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/bat-rpls-2/igt@i915_selftest@live@gt_pm.html

  * igt@kms_busy@basic@modeset:
    - {bat-adlp-11}:      [ABORT][9] ([i915#4423]) -> [PASS][10]
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/bat-adlp-11/igt@kms_busy@basic@modeset.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/bat-adlp-11/igt@kms_busy@basic@modeset.html

  * igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-c-dp-1:
    - bat-dg2-8:          [FAIL][11] ([i915#7932]) -> [PASS][12]
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/bat-dg2-8/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-c-dp-1.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/bat-dg2-8/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-c-dp-1.html

  * igt@kms_pipe_crc_basic@suspend-read-crc@pipe-c-dp-1:
    - fi-cfl-8109u:       [ABORT][13] -> [PASS][14]
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/fi-cfl-8109u/igt@kms_pipe_crc_basic@suspend-read-crc@pipe-c-dp-1.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/fi-cfl-8109u/igt@kms_pipe_crc_basic@suspend-read-crc@pipe-c-dp-1.html

  
#### Warnings ####

  * igt@i915_selftest@live@reset:
    - bat-rpls-1:         [ABORT][15] ([i915#4983] / [i915#7461] / [i915#7981] / [i915#8347] / [i915#8384]) -> [ABORT][16] ([i915#4983] / [i915#7461] / [i915#8347] / [i915#8384])
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/bat-rpls-1/igt@i915_selftest@live@reset.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/bat-rpls-1/igt@i915_selftest@live@reset.html

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

  [i915#3637]: https://gitlab.freedesktop.org/drm/intel/issues/3637
  [i915#4093]: https://gitlab.freedesktop.org/drm/intel/issues/4093
  [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4229]: https://gitlab.freedesktop.org/drm/intel/issues/4229
  [i915#4258]: https://gitlab.freedesktop.org/drm/intel/issues/4258
  [i915#4423]: https://gitlab.freedesktop.org/drm/intel/issues/4423
  [i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
  [i915#6367]: https://gitlab.freedesktop.org/drm/intel/issues/6367
  [i915#6645]: https://gitlab.freedesktop.org/drm/intel/issues/6645
  [i915#6868]: https://gitlab.freedesktop.org/drm/intel/issues/6868
  [i915#7059]: https://gitlab.freedesktop.org/drm/intel/issues/7059
  [i915#7461]: https://gitlab.freedesktop.org/drm/intel/issues/7461
  [i915#7677]: https://gitlab.freedesktop.org/drm/intel/issues/7677
  [i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828
  [i915#7852]: https://gitlab.freedesktop.org/drm/intel/issues/7852
  [i915#7913]: https://gitlab.freedesktop.org/drm/intel/issues/7913
  [i915#7932]: https://gitlab.freedesktop.org/drm/intel/issues/7932
  [i915#7981]: https://gitlab.freedesktop.org/drm/intel/issues/7981
  [i915#8347]: https://gitlab.freedesktop.org/drm/intel/issues/8347
  [i915#8384]: https://gitlab.freedesktop.org/drm/intel/issues/8384


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

  * CI: CI-20190529 -> None
  * IGT: IGT_7322 -> IGTPW_9142

  CI-20190529: 20190529
  CI_DRM_13256: be85dc2d44c075230eec4366e27bc1fe75ee59ff @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_9142: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/index.html
  IGT_7322: 2dd77d6d827a308caae49ce3eba759c2bab394ed @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

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

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

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

* [igt-dev] ✓ Fi.CI.IGT: success for series starting with [i-g-t,1/2] lib/i915/mocs: Move mocs library to 'lib' folder
  2023-06-09 13:01 [igt-dev] [PATCH i-g-t 1/2] lib/i915/mocs: Move mocs library to 'lib' folder Christoph Manszewski
  2023-06-09 13:01 ` [igt-dev] [PATCH i-g-t 2/2] lib/[gpu_cmds|intel_bufops]: Enable surface state mocs setting Christoph Manszewski
  2023-06-09 17:56 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/2] lib/i915/mocs: Move mocs library to 'lib' folder Patchwork
@ 2023-06-11  2:25 ` Patchwork
  2023-06-12  5:25 ` [igt-dev] [PATCH i-g-t 1/2] " Zbigniew Kempczyński
  3 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2023-06-11  2:25 UTC (permalink / raw)
  To: Christoph Manszewski; +Cc: igt-dev

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

== Series Details ==

Series: series starting with [i-g-t,1/2] lib/i915/mocs: Move mocs library to 'lib' folder
URL   : https://patchwork.freedesktop.org/series/119139/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_13256_full -> IGTPW_9142_full
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

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

  No changes in participating hosts

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

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

### IGT changes ###

#### Suppressed ####

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

  * igt@gem_exec_whisper@basic-queues-priority-all:
    - {shard-tglu}:       [PASS][1] -> [DMESG-WARN][2]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-tglu-8/igt@gem_exec_whisper@basic-queues-priority-all.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-tglu-5/igt@gem_exec_whisper@basic-queues-priority-all.html

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

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

### IGT changes ###

#### Issues hit ####

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

  * igt@gem_exec_fair@basic-pace-share@rcs0:
    - shard-apl:          [PASS][4] -> [FAIL][5] ([i915#2842])
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-apl3/igt@gem_exec_fair@basic-pace-share@rcs0.html
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-apl1/igt@gem_exec_fair@basic-pace-share@rcs0.html

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

  * igt@i915_module_load@load:
    - shard-glk:          NOTRUN -> [SKIP][7] ([fdo#109271] / [i915#6227])
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-glk7/igt@i915_module_load@load.html

  * igt@i915_module_load@reload-no-display:
    - shard-snb:          [PASS][8] -> [ABORT][9] ([i915#4528] / [i915#8393])
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-snb4/igt@i915_module_load@reload-no-display.html
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-snb5/igt@i915_module_load@reload-no-display.html

  * igt@i915_pipe_stress@stress-xrgb8888-untiled:
    - shard-snb:          [PASS][10] -> [SKIP][11] ([fdo#109271]) +2 similar issues
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-snb4/igt@i915_pipe_stress@stress-xrgb8888-untiled.html
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-snb5/igt@i915_pipe_stress@stress-xrgb8888-untiled.html

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

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size:
    - shard-apl:          [PASS][13] -> [FAIL][14] ([i915#2346])
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-apl2/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-apl2/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible@b-hdmi-a2:
    - shard-glk:          [PASS][15] -> [FAIL][16] ([i915#79])
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-glk6/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-hdmi-a2.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-glk6/igt@kms_flip@flip-vs-expired-vblank-interruptible@b-hdmi-a2.html

  * igt@kms_plane_scaling@plane-downscale-with-pixel-format-factor-0-25@pipe-b-vga-1:
    - shard-snb:          NOTRUN -> [SKIP][17] ([fdo#109271] / [i915#4579]) +20 similar issues
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-snb6/igt@kms_plane_scaling@plane-downscale-with-pixel-format-factor-0-25@pipe-b-vga-1.html

  * igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-a-vga-1:
    - shard-snb:          NOTRUN -> [SKIP][18] ([fdo#109271]) +88 similar issues
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-snb5/igt@kms_plane_scaling@plane-scaler-with-clipping-clamping-rotation@pipe-a-vga-1.html

  * igt@kms_plane_scaling@plane-upscale-with-rotation-20x20@pipe-c-hdmi-a-1:
    - shard-glk:          NOTRUN -> [SKIP][19] ([fdo#109271] / [i915#4579]) +2 similar issues
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-glk4/igt@kms_plane_scaling@plane-upscale-with-rotation-20x20@pipe-c-hdmi-a-1.html

  * igt@kms_setmode@basic@pipe-a-hdmi-a-1:
    - shard-snb:          NOTRUN -> [FAIL][20] ([i915#5465]) +1 similar issue
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-snb1/igt@kms_setmode@basic@pipe-a-hdmi-a-1.html

  * igt@kms_vblank@pipe-d-wait-busy-hang:
    - shard-glk:          NOTRUN -> [SKIP][21] ([fdo#109271]) +37 similar issues
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-glk5/igt@kms_vblank@pipe-d-wait-busy-hang.html

  
#### Possible fixes ####

  * igt@drm_fdinfo@most-busy-idle-check-all@rcs0:
    - {shard-rkl}:        [FAIL][22] ([i915#7742]) -> [PASS][23]
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-rkl-4/igt@drm_fdinfo@most-busy-idle-check-all@rcs0.html
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-rkl-2/igt@drm_fdinfo@most-busy-idle-check-all@rcs0.html

  * igt@gem_exec_fair@basic-none-solo@rcs0:
    - shard-apl:          [FAIL][24] ([i915#2842]) -> [PASS][25]
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-apl1/igt@gem_exec_fair@basic-none-solo@rcs0.html
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-apl1/igt@gem_exec_fair@basic-none-solo@rcs0.html

  * igt@gem_exec_fair@basic-pace-share@rcs0:
    - {shard-rkl}:        [FAIL][26] ([i915#2842]) -> [PASS][27] +1 similar issue
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-rkl-6/igt@gem_exec_fair@basic-pace-share@rcs0.html
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-rkl-7/igt@gem_exec_fair@basic-pace-share@rcs0.html

  * igt@gem_exec_fair@basic-pace@vcs0:
    - shard-glk:          [FAIL][28] ([i915#2842]) -> [PASS][29] +2 similar issues
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-glk2/igt@gem_exec_fair@basic-pace@vcs0.html
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-glk9/igt@gem_exec_fair@basic-pace@vcs0.html

  * igt@gen9_exec_parse@allowed-single:
    - shard-glk:          [ABORT][30] ([i915#5566]) -> [PASS][31]
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-glk5/igt@gen9_exec_parse@allowed-single.html
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-glk9/igt@gen9_exec_parse@allowed-single.html

  * igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-hdmi-a:
    - {shard-rkl}:        [SKIP][32] ([i915#1937] / [i915#4579]) -> [PASS][33]
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-rkl-3/igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-hdmi-a.html
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-rkl-7/igt@i915_pm_lpsp@kms-lpsp@kms-lpsp-hdmi-a.html

  * igt@i915_pm_rps@reset:
    - shard-snb:          [INCOMPLETE][34] ([i915#7790]) -> [PASS][35]
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-snb6/igt@i915_pm_rps@reset.html
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-snb6/igt@i915_pm_rps@reset.html

  * igt@i915_suspend@basic-s2idle-without-i915:
    - {shard-tglu}:       [ABORT][36] ([i915#8213]) -> [PASS][37]
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-tglu-2/igt@i915_suspend@basic-s2idle-without-i915.html
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-tglu-4/igt@i915_suspend@basic-s2idle-without-i915.html

  * igt@kms_async_flips@alternate-sync-async-flip@pipe-a-vga-1:
    - shard-snb:          [FAIL][38] ([i915#2521]) -> [PASS][39]
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-snb7/igt@kms_async_flips@alternate-sync-async-flip@pipe-a-vga-1.html
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-snb7/igt@kms_async_flips@alternate-sync-async-flip@pipe-a-vga-1.html

  * igt@kms_async_flips@alternate-sync-async-flip@pipe-b-hdmi-a-1:
    - shard-glk:          [FAIL][40] ([i915#2521]) -> [PASS][41]
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-glk7/igt@kms_async_flips@alternate-sync-async-flip@pipe-b-hdmi-a-1.html
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-glk8/igt@kms_async_flips@alternate-sync-async-flip@pipe-b-hdmi-a-1.html

  * igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip:
    - {shard-dg1}:        [FAIL][42] ([i915#3743]) -> [PASS][43]
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-dg1-19/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip.html
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-dg1-16/igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180-hflip-async-flip.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size:
    - shard-glk:          [FAIL][44] ([i915#2346]) -> [PASS][45]
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-glk1/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-glk6/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html

  * igt@kms_cursor_legacy@forked-bo@pipe-b:
    - {shard-rkl}:        [INCOMPLETE][46] ([i915#8011]) -> [PASS][47]
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-rkl-7/igt@kms_cursor_legacy@forked-bo@pipe-b.html
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-rkl-4/igt@kms_cursor_legacy@forked-bo@pipe-b.html

  * igt@perf_pmu@busy-double-start@vecs0:
    - {shard-dg1}:        [FAIL][48] ([i915#4349]) -> [PASS][49] +1 similar issue
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-dg1-13/igt@perf_pmu@busy-double-start@vecs0.html
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-dg1-14/igt@perf_pmu@busy-double-start@vecs0.html

  * igt@perf_pmu@busy-idle-check-all@vecs0:
    - {shard-dg1}:        [FAIL][50] ([i915#4521]) -> [PASS][51] +2 similar issues
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-dg1-17/igt@perf_pmu@busy-idle-check-all@vecs0.html
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-dg1-18/igt@perf_pmu@busy-idle-check-all@vecs0.html

  * igt@perf_pmu@most-busy-idle-check-all@rcs0:
    - {shard-dg1}:        [FAIL][52] ([i915#5234]) -> [PASS][53]
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/shard-dg1-15/igt@perf_pmu@most-busy-idle-check-all@rcs0.html
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/shard-dg1-12/igt@perf_pmu@most-busy-idle-check-all@rcs0.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#109274]: https://bugs.freedesktop.org/show_bug.cgi?id=109274
  [fdo#109280]: https://bugs.freedesktop.org/show_bug.cgi?id=109280
  [fdo#109285]: https://bugs.freedesktop.org/show_bug.cgi?id=109285
  [fdo#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
  [fdo#109295]: https://bugs.freedesktop.org/show_bug.cgi?id=109295
  [fdo#109303]: https://bugs.freedesktop.org/show_bug.cgi?id=109303
  [fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
  [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#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
  [fdo#111614]: https://bugs.freedesktop.org/show_bug.cgi?id=111614
  [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
  [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
  [i915#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1099]: https://gitlab.freedesktop.org/drm/intel/issues/1099
  [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
  [i915#1825]: https://gitlab.freedesktop.org/drm/intel/issues/1825
  [i915#1937]: https://gitlab.freedesktop.org/drm/intel/issues/1937
  [i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
  [i915#2521]: https://gitlab.freedesktop.org/drm/intel/issues/2521
  [i915#2527]: https://gitlab.freedesktop.org/drm/intel/issues/2527
  [i915#2575]: https://gitlab.freedesktop.org/drm/intel/issues/2575
  [i915#2587]: https://gitlab.freedesktop.org/drm/intel/issues/2587
  [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#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
  [i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
  [i915#3023]: https://gitlab.freedesktop.org/drm/intel/issues/3023
  [i915#3116]: https://gitlab.freedesktop.org/drm/intel/issues/3116
  [i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
  [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#3318]: https://gitlab.freedesktop.org/drm/intel/issues/3318
  [i915#3458]: https://gitlab.freedesktop.org/drm/intel/issues/3458
  [i915#3539]: https://gitlab.freedesktop.org/drm/intel/issues/3539
  [i915#3555]: https://gitlab.freedesktop.org/drm/intel/issues/3555
  [i915#3591]: https://gitlab.freedesktop.org/drm/intel/issues/3591
  [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#3743]: https://gitlab.freedesktop.org/drm/intel/issues/3743
  [i915#3825]: https://gitlab.freedesktop.org/drm/intel/issues/3825
  [i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
  [i915#3955]: https://gitlab.freedesktop.org/drm/intel/issues/3955
  [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#4098]: https://gitlab.freedesktop.org/drm/intel/issues/4098
  [i915#4103]: https://gitlab.freedesktop.org/drm/intel/issues/4103
  [i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
  [i915#4281]: https://gitlab.freedesktop.org/drm/intel/issues/4281
  [i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349
  [i915#4391]: https://gitlab.freedesktop.org/drm/intel/issues/4391
  [i915#4521]: https://gitlab.freedesktop.org/drm/intel/issues/4521
  [i915#4528]: https://gitlab.freedesktop.org/drm/intel/issues/4528
  [i915#4538]: https://gitlab.freedesktop.org/drm/intel/issues/4538
  [i915#4579]: https://gitlab.freedesktop.org/drm/intel/issues/4579
  [i915#4613]: https://gitlab.freedesktop.org/drm/intel/issues/4613
  [i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833
  [i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
  [i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
  [i915#5234]: https://gitlab.freedesktop.org/drm/intel/issues/5234
  [i915#5235]: https://gitlab.freedesktop.org/drm/intel/issues/5235
  [i915#5286]: https://gitlab.freedesktop.org/drm/intel/issues/5286
  [i915#5289]: https://gitlab.freedesktop.org/drm/intel/issues/5289
  [i915#5325]: https://gitlab.freedesktop.org/drm/intel/issues/5325
  [i915#533]: https://gitlab.freedesktop.org/drm/intel/issues/533
  [i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354
  [i915#5465]: https://gitlab.freedesktop.org/drm/intel/issues/5465
  [i915#5493]: https://gitlab.freedesktop.org/drm/intel/issues/5493
  [i915#5566]: https://gitlab.freedesktop.org/drm/intel/issues/5566
  [i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784
  [i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
  [i915#6117]: https://gitlab.freedesktop.org/drm/intel/issues/6117
  [i915#6227]: https://gitlab.freedesktop.org/drm/intel/issues/6227
  [i915#6268]: https://gitlab.freedesktop.org/drm/intel/issues/6268
  [i915#6344]: https://gitlab.freedesktop.org/drm/intel/issues/6344
  [i915#6412]: https://gitlab.freedesktop.org/drm/intel/issues/6412
  [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
  [i915#6768]: https://gitlab.freedesktop.org/drm/intel/issues/6768
  [i915#7456]: https://gitlab.freedesktop.org/drm/intel/issues/7456
  [i915#7461]: https://gitlab.freedesktop.org/drm/intel/issues/7461
  [i915#7561]: https://gitlab.freedesktop.org/drm/intel/issues/7561
  [i915#7582]: https://gitlab.freedesktop.org/drm/intel/issues/7582
  [i915#7697]: https://gitlab.freedesktop.org/drm/intel/issues/7697
  [i915#7711]: https://gitlab.freedesktop.org/drm/intel/issues/7711
  [i915#7742]: https://gitlab.freedesktop.org/drm/intel/issues/7742
  [i915#7790]: https://gitlab.freedesktop.org/drm/intel/issues/7790
  [i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828
  [i915#79]: https://gitlab.freedesktop.org/drm/intel/issues/79
  [i915#7975]: https://gitlab.freedesktop.org/drm/intel/issues/7975
  [i915#8011]: https://gitlab.freedesktop.org/drm/intel/issues/8011
  [i915#8174]: https://gitlab.freedesktop.org/drm/intel/issues/8174
  [i915#8213]: https://gitlab.freedesktop.org/drm/intel/issues/8213
  [i915#8311]: https://gitlab.freedesktop.org/drm/intel/issues/8311
  [i915#8393]: https://gitlab.freedesktop.org/drm/intel/issues/8393
  [i915#8398]: https://gitlab.freedesktop.org/drm/intel/issues/8398
  [i915#8414]: https://gitlab.freedesktop.org/drm/intel/issues/8414
  [i915#8502]: https://gitlab.freedesktop.org/drm/intel/issues/8502


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

  * CI: CI-20190529 -> None
  * IGT: IGT_7322 -> IGTPW_9142
  * Piglit: piglit_4509 -> None

  CI-20190529: 20190529
  CI_DRM_13256: be85dc2d44c075230eec4366e27bc1fe75ee59ff @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_9142: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9142/index.html
  IGT_7322: 2dd77d6d827a308caae49ce3eba759c2bab394ed @ 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_9142/index.html

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

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

* Re: [igt-dev] [PATCH i-g-t 1/2] lib/i915/mocs: Move mocs library to 'lib' folder
  2023-06-09 13:01 [igt-dev] [PATCH i-g-t 1/2] lib/i915/mocs: Move mocs library to 'lib' folder Christoph Manszewski
                   ` (2 preceding siblings ...)
  2023-06-11  2:25 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
@ 2023-06-12  5:25 ` Zbigniew Kempczyński
  3 siblings, 0 replies; 6+ messages in thread
From: Zbigniew Kempczyński @ 2023-06-12  5:25 UTC (permalink / raw)
  To: Christoph Manszewski; +Cc: igt-dev

On Fri, Jun 09, 2023 at 03:01:27PM +0200, Christoph Manszewski wrote:
> Since mocs are driver agnostic and are currently used in driver agnostic
> code, move them to the 'lib' folder and get rid of i915 references.
> 
> Signed-off-by: Christoph Manszewski <christoph.manszewski@intel.com>

Ok, we can reuse the code:

Reviewed-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>

--
Zbigniew

> ---
>  lib/igt_draw.c                 | 2 +-
>  lib/{i915 => }/intel_mocs.c    | 9 ++++-----
>  lib/{i915 => }/intel_mocs.h    | 0
>  lib/meson.build                | 2 +-
>  tests/i915/gem_ccs.c           | 2 +-
>  tests/i915/gem_exercise_blt.c  | 2 +-
>  tests/i915/gem_lmem_swapping.c | 2 +-
>  7 files changed, 9 insertions(+), 10 deletions(-)
>  rename lib/{i915 => }/intel_mocs.c (89%)
>  rename lib/{i915 => }/intel_mocs.h (100%)
> 
> diff --git a/lib/igt_draw.c b/lib/igt_draw.c
> index a5c0cbbf..6f362994 100644
> --- a/lib/igt_draw.c
> +++ b/lib/igt_draw.c
> @@ -30,13 +30,13 @@
>  #include "intel_bufops.h"
>  #include "intel_batchbuffer.h"
>  #include "intel_chipset.h"
> +#include "intel_mocs.h"
>  #include "igt_core.h"
>  #include "igt_fb.h"
>  #include "ioctl_wrappers.h"
>  #include "i830_reg.h"
>  #include "i915/gem_create.h"
>  #include "i915/gem_mman.h"
> -#include "i915/intel_mocs.h"
>  #include "xe/xe_ioctl.h"
>  #include "xe/xe_query.h"
>  
> diff --git a/lib/i915/intel_mocs.c b/lib/intel_mocs.c
> similarity index 89%
> rename from lib/i915/intel_mocs.c
> rename to lib/intel_mocs.c
> index 95f0fbde..cf3b8e4f 100644
> --- a/lib/i915/intel_mocs.c
> +++ b/lib/intel_mocs.c
> @@ -4,7 +4,6 @@
>   */
>  
>  #include "igt.h"
> -#include "i915/gem.h"
>  #include "intel_mocs.h"
>  
>  #define DG1_MOCS_UC_IDX				1
> @@ -18,12 +17,12 @@
>  #define XY_BLOCK_COPY_BLT_MOCS_SHIFT		21
>  #define XY_CTRL_SURF_COPY_BLT_MOCS_SHIFT	25
>  
> -struct drm_i915_mocs_index {
> +struct drm_intel_mocs_index {
>  	uint8_t uc_index;
>  	uint8_t wb_index;
>  };
>  
> -static void get_mocs_index(int fd, struct drm_i915_mocs_index *mocs)
> +static void get_mocs_index(int fd, struct drm_intel_mocs_index *mocs)
>  {
>  	uint16_t devid = intel_get_drm_devid(fd);
>  
> @@ -58,7 +57,7 @@ static void get_mocs_index(int fd, struct drm_i915_mocs_index *mocs)
>  
>  uint8_t intel_get_wb_mocs(int fd)
>  {
> -	struct drm_i915_mocs_index mocs;
> +	struct drm_intel_mocs_index mocs;
>  
>  	get_mocs_index(fd, &mocs);
>  	return mocs.wb_index << 1;
> @@ -66,7 +65,7 @@ uint8_t intel_get_wb_mocs(int fd)
>  
>  uint8_t intel_get_uc_mocs(int fd)
>  {
> -	struct drm_i915_mocs_index mocs;
> +	struct drm_intel_mocs_index mocs;
>  
>  	get_mocs_index(fd, &mocs);
>  	return mocs.uc_index << 1;
> diff --git a/lib/i915/intel_mocs.h b/lib/intel_mocs.h
> similarity index 100%
> rename from lib/i915/intel_mocs.h
> rename to lib/intel_mocs.h
> diff --git a/lib/meson.build b/lib/meson.build
> index 55efdc83..ad5d999d 100644
> --- a/lib/meson.build
> +++ b/lib/meson.build
> @@ -13,7 +13,6 @@ lib_sources = [
>  	'i915/gem_vm.c',
>  	'i915/intel_decode.c',
>  	'i915/intel_memory_region.c',
> -	'i915/intel_mocs.c',
>  	'i915/intel_cmds_info.c',
>  	'i915/i915_blt.c',
>  	'i915/i915_crc.c',
> @@ -60,6 +59,7 @@ lib_sources = [
>  	'intel_ctx.c',
>  	'intel_device_info.c',
>  	'intel_mmio.c',
> +	'intel_mocs.c',
>  	'ioctl_wrappers.c',
>  	'media_spin.c',
>  	'media_fill.c',
> diff --git a/tests/i915/gem_ccs.c b/tests/i915/gem_ccs.c
> index ff6504b3..d38ab49a 100644
> --- a/tests/i915/gem_ccs.c
> +++ b/tests/i915/gem_ccs.c
> @@ -14,7 +14,7 @@
>  #include "i915/gem_create.h"
>  #include "lib/intel_chipset.h"
>  #include "i915/i915_blt.h"
> -#include "i915/intel_mocs.h"
> +#include "intel_mocs.h"
>  /**
>   * TEST: gem ccs
>   * Description: Exercise gen12 blitter with and without flatccs compression
> diff --git a/tests/i915/gem_exercise_blt.c b/tests/i915/gem_exercise_blt.c
> index 3287ced7..89f89d21 100644
> --- a/tests/i915/gem_exercise_blt.c
> +++ b/tests/i915/gem_exercise_blt.c
> @@ -9,7 +9,7 @@
>  #include "i915/gem_create.h"
>  #include "lib/intel_chipset.h"
>  #include "i915/i915_blt.h"
> -#include "i915/intel_mocs.h"
> +#include "intel_mocs.h"
>  /**
>   * TEST: gem exercise blt
>   * Description: Exercise blitter commands
> diff --git a/tests/i915/gem_lmem_swapping.c b/tests/i915/gem_lmem_swapping.c
> index 6f1340ba..8211edbe 100644
> --- a/tests/i915/gem_lmem_swapping.c
> +++ b/tests/i915/gem_lmem_swapping.c
> @@ -23,7 +23,7 @@
>  #include <sys/wait.h>
>  #include "drm.h"
>  #include "i915/i915_blt.h"
> -#include "i915/intel_mocs.h"
> +#include "intel_mocs.h"
>  /**
>   * TEST: gem lmem swapping
>   * Description: Exercise local memory swapping.
> -- 
> 2.40.1
> 

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

* Re: [igt-dev] [PATCH i-g-t 2/2] lib/[gpu_cmds|intel_bufops]: Enable surface state mocs setting.
  2023-06-09 13:01 ` [igt-dev] [PATCH i-g-t 2/2] lib/[gpu_cmds|intel_bufops]: Enable surface state mocs setting Christoph Manszewski
@ 2023-06-12  5:28   ` Zbigniew Kempczyński
  0 siblings, 0 replies; 6+ messages in thread
From: Zbigniew Kempczyński @ 2023-06-12  5:28 UTC (permalink / raw)
  To: Christoph Manszewski; +Cc: igt-dev

On Fri, Jun 09, 2023 at 03:01:28PM +0200, Christoph Manszewski wrote:
> Allow the user to control the setting of surface caching.
> Add 'mocs' field to intel_buf structure and update the surface state
> fill commands to use introduced filed.
> 
> Signed-off-by: Dominik Grzegorzek <dominik.grzegorzek@intel.com>
> Signed-off-by: Christoph Manszewski <christoph.manszewski@intel.com>
> ---
>  lib/gpu_cmds.c     | 19 +++++++++++++++++++
>  lib/intel_bufops.c |  1 +
>  lib/intel_bufops.h | 20 ++++++++++++++++++++
>  3 files changed, 40 insertions(+)
> 
> diff --git a/lib/gpu_cmds.c b/lib/gpu_cmds.c
> index 1f321ae4..aa4aa34d 100644
> --- a/lib/gpu_cmds.c
> +++ b/lib/gpu_cmds.c
> @@ -23,6 +23,7 @@
>   */
>  
>  #include "gpu_cmds.h"
> +#include "intel_mocs.h"
>  
>  uint32_t
>  gen7_fill_curbe_buffer_data(struct intel_bb *ibb, uint8_t color)
> @@ -135,6 +136,7 @@ gen8_fill_surface_state(struct intel_bb *ibb,
>  	struct gen8_surface_state *ss;
>  	uint32_t write_domain, read_domain, offset;
>  	uint64_t address;
> +	enum intel_buf_mocs mocs = intel_buf_get_mocs(buf);
>  
>  	if (is_dst) {
>  		write_domain = read_domain = I915_GEM_DOMAIN_RENDER;
> @@ -154,6 +156,11 @@ gen8_fill_surface_state(struct intel_bb *ibb,
>  	ss->ss0.vertical_alignment = 1; /* align 4 */
>  	ss->ss0.horizontal_alignment = 1; /* align 4 */
>  
> +	if (mocs == INTEL_BUF_MOCS_UC)
> +		ss->ss1.memory_object_control = intel_get_uc_mocs(ibb->fd);
> +	else if (mocs == INTEL_BUF_MOCS_WB)
> +		ss->ss1.memory_object_control = intel_get_wb_mocs(ibb->fd);
> +

At the moment this if/else if is a dead code (similar in the functions below)
because you're setting

+	buf->mocs = INTEL_BUF_MOCS_DEFAULT;

and there're no usage of intel_buf_set_mocs() helper.

Is this intentional and preparation for next patches? If yes:

Reviewed-by: Zbigniew Kempczyński <zbigniew.kempczynski@intel.com>

--
Zbigniew

>  	if (buf->tiling == I915_TILING_X)
>  		ss->ss0.tiled_mode = 2;
>  	else if (buf->tiling == I915_TILING_Y || buf->tiling == I915_TILING_4)
> @@ -190,6 +197,7 @@ gen11_fill_surface_state(struct intel_bb *ibb,
>  	struct gen8_surface_state *ss;
>  	uint32_t write_domain, read_domain, offset;
>  	uint64_t address;
> +	enum intel_buf_mocs mocs = intel_buf_get_mocs(buf);
>  
>  	if (is_dst) {
>  		write_domain = read_domain = I915_GEM_DOMAIN_RENDER;
> @@ -209,6 +217,11 @@ gen11_fill_surface_state(struct intel_bb *ibb,
>  	ss->ss0.vertical_alignment = vertical_alignment; /* align 4 */
>  	ss->ss0.horizontal_alignment = horizontal_alignment; /* align 4 */
>  
> +	if (mocs == INTEL_BUF_MOCS_UC)
> +		ss->ss1.memory_object_control = intel_get_uc_mocs(ibb->fd);
> +	else if (mocs == INTEL_BUF_MOCS_WB)
> +		ss->ss1.memory_object_control = intel_get_wb_mocs(ibb->fd);
> +
>  	if (buf->tiling == I915_TILING_X)
>  		ss->ss0.tiled_mode = 2;
>  	else if (buf->tiling == I915_TILING_Y || buf->tiling == I915_TILING_4)
> @@ -817,6 +830,7 @@ xehp_fill_surface_state(struct intel_bb *ibb,
>  	struct xehp_surface_state *ss;
>  	uint32_t write_domain, read_domain, offset;
>  	uint64_t address;
> +	enum intel_buf_mocs mocs = intel_buf_get_mocs(buf);
>  
>  	if (is_dst) {
>  		write_domain = read_domain = I915_GEM_DOMAIN_RENDER;
> @@ -836,6 +850,11 @@ xehp_fill_surface_state(struct intel_bb *ibb,
>  	ss->ss0.vertical_alignment = 1; /* align 4 */
>  	ss->ss0.horizontal_alignment = 1; /* align 4 */
>  
> +	if (mocs == INTEL_BUF_MOCS_UC)
> +		ss->ss1.memory_object_control = intel_get_uc_mocs(ibb->fd);
> +	else if (mocs == INTEL_BUF_MOCS_WB)
> +		ss->ss1.memory_object_control = intel_get_wb_mocs(ibb->fd);
> +
>  	if (buf->tiling == I915_TILING_X)
>  		ss->ss0.tiled_mode = 2;
>  	else if (buf->tiling == I915_TILING_Y || buf->tiling == I915_TILING_4)
> diff --git a/lib/intel_bufops.c b/lib/intel_bufops.c
> index 46fd981f..52475793 100644
> --- a/lib/intel_bufops.c
> +++ b/lib/intel_bufops.c
> @@ -837,6 +837,7 @@ static void __intel_buf_init(struct buf_ops *bops,
>  	buf->bops = bops;
>  	buf->addr.offset = INTEL_BUF_INVALID_ADDRESS;
>  	IGT_INIT_LIST_HEAD(&buf->link);
> +	buf->mocs = INTEL_BUF_MOCS_DEFAULT;
>  
>  	if (compression) {
>  		igt_require(bops->intel_gen >= 9);
> diff --git a/lib/intel_bufops.h b/lib/intel_bufops.h
> index 0037548a..4dfe4681 100644
> --- a/lib/intel_bufops.h
> +++ b/lib/intel_bufops.h
> @@ -12,6 +12,12 @@ struct buf_ops;
>  #define INTEL_BUF_NAME_MAXSIZE 32
>  #define INVALID_ADDR(x) ((x) == INTEL_BUF_INVALID_ADDRESS)
>  
> +enum intel_buf_mocs {
> +	INTEL_BUF_MOCS_DEFAULT,
> +	INTEL_BUF_MOCS_UC,
> +	INTEL_BUF_MOCS_WB,
> +};
> +
>  struct intel_buf {
>  	struct buf_ops *bops;
>  
> @@ -23,6 +29,7 @@ struct intel_buf {
>  	uint32_t compression;
>  	uint32_t swizzle_mode;
>  	uint32_t yuv_semiplanar_bpp;
> +	enum intel_buf_mocs mocs;
>  	bool format_is_yuv;
>  	bool format_is_yuv_semiplanar;
>  	struct {
> @@ -212,4 +219,17 @@ const char *intel_buf_set_name(struct intel_buf *buf, const char *name);
>  void intel_buf_write_to_png(struct intel_buf *buf, const char *filename);
>  void intel_buf_write_aux_to_png(struct intel_buf *buf, const char *filename);
>  
> +static inline enum intel_buf_mocs intel_buf_get_mocs(const struct intel_buf *buf)
> +{
> +	igt_assert(buf);
> +	return buf->mocs;
> +}
> +
> +static inline void intel_buf_set_mocs(struct intel_buf *buf,
> +				      enum intel_buf_mocs mocs)
> +{
> +	igt_assert(buf);
> +	buf->mocs = mocs;
> +}
> +
>  #endif
> -- 
> 2.40.1
> 

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

end of thread, other threads:[~2023-06-12  5:28 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-06-09 13:01 [igt-dev] [PATCH i-g-t 1/2] lib/i915/mocs: Move mocs library to 'lib' folder Christoph Manszewski
2023-06-09 13:01 ` [igt-dev] [PATCH i-g-t 2/2] lib/[gpu_cmds|intel_bufops]: Enable surface state mocs setting Christoph Manszewski
2023-06-12  5:28   ` Zbigniew Kempczyński
2023-06-09 17:56 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,1/2] lib/i915/mocs: Move mocs library to 'lib' folder Patchwork
2023-06-11  2:25 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2023-06-12  5:25 ` [igt-dev] [PATCH i-g-t 1/2] " Zbigniew Kempczyński

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.