Igt-dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t v4] tests/i915: skip gem_set_caching call for mtl
@ 2023-03-31 12:47 Vikas Srivastava
  2023-03-31 15:36 ` [igt-dev] ✓ Fi.CI.BAT: success for tests/i915: skip gem_set_caching call for mtl (rev6) Patchwork
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: Vikas Srivastava @ 2023-03-31 12:47 UTC (permalink / raw)
  To: igt-dev, kamil.konieczny

Call to gem_set_caching skips the test since i915_gem_set_caching_ioctl is
deprecated for MTL. To avoid this add the check for set caching supported
platforms.

FIXME: This is a temp solution to fix the IGT test issues where
set caching call is used , there is alternate API available
but support not yet available to use that.Once set_pat_index
support available need to bring that change replacing this one.

Signed-off-by: Vikas Srivastava <vikas.srivastava@intel.com>
---
 lib/ioctl_wrappers.c                | 14 ++++++++++++++
 lib/ioctl_wrappers.h                |  1 +
 tests/i915/gem_caching.c            |  5 +++++
 tests/i915/gem_exec_flush.c         |  6 ++++--
 tests/i915/gem_exec_latency.c       |  3 ++-
 tests/i915/gem_exec_suspend.c       |  6 ++++--
 tests/i915/gem_render_tiled_blits.c |  3 ++-
 tests/i915/gem_softpin.c            |  3 ++-
 tests/i915/gem_userptr_blits.c      | 11 ++++++++---
 tests/i915/gem_workarounds.c        |  6 ++++--
 tests/i915/i915_pm_rpm.c            |  7 ++++---
 tests/prime_vgem.c                  |  3 ++-
 12 files changed, 52 insertions(+), 16 deletions(-)

diff --git a/lib/ioctl_wrappers.c b/lib/ioctl_wrappers.c
index 1ab41ab6d6..ebd8a2f36f 100644
--- a/lib/ioctl_wrappers.c
+++ b/lib/ioctl_wrappers.c
@@ -1297,3 +1297,17 @@ bool igt_has_drm_cap(int fd, uint64_t capability)
 	igt_assert(drmIoctl(fd, DRM_IOCTL_GET_CAP, &cap) == 0);
 	return cap.value;
 }
+
+/**
+ * igt_has_set_caching:
+ * @devid: platform id.
+ *
+ * This helper verifies if the passed platform id
+ * has support for setting cache.
+ *
+ * Returns: Whether the cache setting  is supported or not.
+ */
+bool igt_has_set_caching(uint32_t devid)
+{
+	return IS_METEORLAKE(devid) ? false : true;
+}
diff --git a/lib/ioctl_wrappers.h b/lib/ioctl_wrappers.h
index e4d7c0d408..4c232078d0 100644
--- a/lib/ioctl_wrappers.h
+++ b/lib/ioctl_wrappers.h
@@ -145,6 +145,7 @@ void prime_sync_end(int dma_buf_fd, bool write);
 bool igt_has_fb_modifiers(int fd);
 void igt_require_fb_modifiers(int fd);
 bool igt_has_drm_cap(int fd, uint64_t capability);
+bool igt_has_set_caching(uint32_t devid);
 
 /**
  * __kms_addfb:
diff --git a/tests/i915/gem_caching.c b/tests/i915/gem_caching.c
index eb0170abca..d0c7aa035f 100644
--- a/tests/i915/gem_caching.c
+++ b/tests/i915/gem_caching.c
@@ -158,6 +158,11 @@ igt_main
 			igt_info("coherency broken on i965g/gm\n");
 			flags = 0;
 		}
+
+		if (!gem_has_lmem(data.fd))
+			igt_require_f(igt_has_set_caching(data.devid),
+				      " cache setting not supported on this target\n");
+
 		data.bops = buf_ops_create(data.fd);
 
 		scratch_buf = intel_buf_create(data.bops, BO_SIZE/4, 1,
diff --git a/tests/i915/gem_exec_flush.c b/tests/i915/gem_exec_flush.c
index bb120e0d6c..42ddbc529e 100644
--- a/tests/i915/gem_exec_flush.c
+++ b/tests/i915/gem_exec_flush.c
@@ -142,7 +142,8 @@ static void run(int fd, unsigned ring, int nchild, int timeout,
 				       I915_GEM_DOMAIN_WC);
 		} else {
 			snoop = flags & COHERENT;
-			gem_set_caching(fd, obj[0].handle, snoop);
+			if (igt_has_set_caching(intel_get_drm_devid(fd)))
+				gem_set_caching(fd, obj[0].handle, snoop);
 			map = gem_mmap__cpu(fd, obj[0].handle, 0, 4096, PROT_WRITE);
 			gem_set_domain(fd, obj[0].handle,
 				       I915_GEM_DOMAIN_CPU,
@@ -401,7 +402,8 @@ static void batch(int fd, unsigned ring, int nchild, int timeout,
 		obj[0].handle = gem_create(fd, 4096);
 		obj[0].flags |= EXEC_OBJECT_WRITE;
 
-		gem_set_caching(fd, obj[0].handle, !!(flags & COHERENT));
+		if (igt_has_set_caching(intel_get_drm_devid(fd)))
+			gem_set_caching(fd, obj[0].handle, !!(flags & COHERENT));
 		map = gem_mmap__cpu(fd, obj[0].handle, 0, 4096, PROT_WRITE);
 
 		gem_set_domain(fd, obj[0].handle,
diff --git a/tests/i915/gem_exec_latency.c b/tests/i915/gem_exec_latency.c
index fcdf7787b8..4838a70820 100644
--- a/tests/i915/gem_exec_latency.c
+++ b/tests/i915/gem_exec_latency.c
@@ -770,7 +770,8 @@ static void context_switch(int i915, const intel_ctx_t *ctx,
 
 	memset(obj, 0, sizeof(obj));
 	obj[0].handle = gem_create(i915, 4096);
-	gem_set_caching(i915, obj[0].handle, 1);
+	if (igt_has_set_caching(intel_get_drm_devid(i915)))
+		gem_set_caching(i915, obj[0].handle, 1);
 	results = gem_mmap__cpu(i915, obj[0].handle, 0, 4096, PROT_READ);
 	gem_set_domain(i915, obj[0].handle, I915_GEM_DOMAIN_CPU, 0);
 
diff --git a/tests/i915/gem_exec_suspend.c b/tests/i915/gem_exec_suspend.c
index 1dadf06df0..8d56093faa 100644
--- a/tests/i915/gem_exec_suspend.c
+++ b/tests/i915/gem_exec_suspend.c
@@ -116,8 +116,10 @@ static void run_test(int fd, const intel_ctx_t *ctx,
 
 	memset(obj, 0, sizeof(obj));
 	obj[0].handle = gem_create_in_memory_regions(fd, 4096, region);
-	if (!gem_has_lmem(fd))
-		gem_set_caching(fd, obj[0].handle, !!(flags & CACHED));
+	if (!gem_has_lmem(fd)) {
+		if (igt_has_set_caching(intel_get_drm_devid(fd)))
+			gem_set_caching(fd, obj[0].handle, !!(flags & CACHED));
+	}
 	obj[0].flags |= EXEC_OBJECT_WRITE;
 	obj[1].handle = gem_create_in_memory_regions(fd, 4096, region);
 	gem_write(fd, obj[1].handle, 0, &bbe, sizeof(bbe));
diff --git a/tests/i915/gem_render_tiled_blits.c b/tests/i915/gem_render_tiled_blits.c
index eae06a332e..3becf576fe 100644
--- a/tests/i915/gem_render_tiled_blits.c
+++ b/tests/i915/gem_render_tiled_blits.c
@@ -117,7 +117,8 @@ static void run_test (int fd, int count)
 	intel_buf_init(bops, &linear, WIDTH, HEIGHT, 32, 0,
 		       I915_TILING_NONE, I915_COMPRESSION_NONE);
 	if (snoop) {
-		gem_set_caching(fd, linear.handle, 1);
+		if (igt_has_set_caching(intel_get_drm_devid(fd)))
+			gem_set_caching(fd, linear.handle, 1);
 		igt_info("Using a snoop linear buffer for comparisons\n");
 	}
 
diff --git a/tests/i915/gem_softpin.c b/tests/i915/gem_softpin.c
index 7682f772a1..8717860b2d 100644
--- a/tests/i915/gem_softpin.c
+++ b/tests/i915/gem_softpin.c
@@ -525,7 +525,8 @@ static void test_evict_snoop(int fd, unsigned int flags)
 	/* Create a snoop + uncached pair */
 	object[0].handle = gem_create(fd, 4096);
 	object[0].flags = EXEC_OBJECT_PINNED;
-	gem_set_caching(fd, object[0].handle, 1);
+	if (igt_has_set_caching(intel_get_drm_devid(fd)))
+		gem_set_caching(fd, object[0].handle, 1);
 	object[1].handle = gem_create(fd, 4096);
 	object[1].flags = EXEC_OBJECT_PINNED;
 	gem_write(fd, object[1].handle, 4096-sizeof(bbe), &bbe, sizeof(bbe));
diff --git a/tests/i915/gem_userptr_blits.c b/tests/i915/gem_userptr_blits.c
index 07a453229a..b97e541118 100644
--- a/tests/i915/gem_userptr_blits.c
+++ b/tests/i915/gem_userptr_blits.c
@@ -1147,8 +1147,10 @@ static void test_relocations(int fd)
 	memset(&obj, 0, sizeof(obj));
 	igt_assert(posix_memalign(&ptr, PAGE_SIZE, size) == 0);
 	gem_userptr(fd, ptr, size, 0, userptr_flags, &obj.handle);
-	if (!gem_has_llc(fd))
-		gem_set_caching(fd, obj.handle, 0);
+	if (!gem_has_llc(fd)) {
+		if (igt_has_set_caching(intel_get_drm_devid(fd)))
+			gem_set_caching(fd, obj.handle, 0);
+	}
 	*(uint32_t *)ptr = MI_BATCH_BUFFER_END;
 
 	reloc = (typeof(reloc))((char *)ptr + PAGE_SIZE);
@@ -2417,8 +2419,11 @@ igt_main_args("c:", NULL, help_str, opt_handler, NULL)
 			test_sd_probe(fd);
 		}
 
-		igt_subtest("set-cache-level")
+		igt_subtest("set-cache-level") {
+			igt_require_f(igt_has_set_caching(intel_get_drm_devid(fd)),
+				      "set_caching not supported on this platform");
 			test_set_caching(fd);
+		}
 
 		igt_subtest("userfault")
 			test_userfault(fd);
diff --git a/tests/i915/gem_workarounds.c b/tests/i915/gem_workarounds.c
index 30c68d1ac9..7d11996254 100644
--- a/tests/i915/gem_workarounds.c
+++ b/tests/i915/gem_workarounds.c
@@ -106,8 +106,10 @@ static int workaround_fail_count(int i915, const intel_ctx_t *ctx)
 
 	memset(obj, 0, sizeof(obj));
 	obj[0].handle = gem_create(i915, result_sz);
-	if (!gem_has_lmem(i915))
-		gem_set_caching(i915, obj[0].handle, I915_CACHING_CACHED);
+	if (!gem_has_lmem(i915)) {
+		if (igt_has_set_caching(intel_get_drm_devid(i915)))
+			gem_set_caching(i915, obj[0].handle, I915_CACHING_CACHED);
+	}
 	obj[1].handle = gem_create(i915, batch_sz);
 	obj[1].relocs_ptr = to_user_pointer(reloc);
 	obj[1].relocation_count = !ahnd ? num_wa_regs : 0;
diff --git a/tests/i915/i915_pm_rpm.c b/tests/i915/i915_pm_rpm.c
index 74935430c1..9a6408dd37 100644
--- a/tests/i915/i915_pm_rpm.c
+++ b/tests/i915/i915_pm_rpm.c
@@ -1995,8 +1995,8 @@ static void pm_test_caching(void)
 
 	for (i = 0; i < ARRAY_SIZE(cache_levels); i++) {
 		igt_assert(wait_for_suspended());
-		gem_set_caching(drm_fd, handle, default_cache_level);
-
+		if (igt_has_set_caching(intel_get_drm_devid(drm_fd)))
+			gem_set_caching(drm_fd, handle, default_cache_level);
 		/* Ensure we bind the vma into the GGTT */
 		memset(gem_buf, 16 << i, gtt_obj_max_size);
 
@@ -2008,7 +2008,8 @@ static void pm_test_caching(void)
 		 */
 		igt_debug("Setting cache level %u\n", cache_levels[i]);
 		igt_assert(wait_for_suspended());
-		gem_set_caching(drm_fd, handle, cache_levels[i]);
+		if (igt_has_set_caching(intel_get_drm_devid(drm_fd)))
+			gem_set_caching(drm_fd, handle, cache_levels[i]);
 	}
 
 	igt_assert(munmap(gem_buf, gtt_obj_max_size) == 0);
diff --git a/tests/prime_vgem.c b/tests/prime_vgem.c
index 7b473c03df..9aa767c9cd 100644
--- a/tests/prime_vgem.c
+++ b/tests/prime_vgem.c
@@ -330,7 +330,8 @@ static void test_userptr(int vgem, int i915)
 	*ptr = MI_BATCH_BUFFER_END;
 
 	gem_userptr(i915, ptr, scratch.size, 0, 0, &obj.handle);
-	gem_set_caching(i915, obj.handle, I915_CACHING_NONE); /* for !llc exec */
+	if (igt_has_set_caching(intel_get_drm_devid(i915)))
+		gem_set_caching(i915, obj.handle, I915_CACHING_NONE); /* for !llc exec */
 
 	gem_execbuf(i915, &execbuf);
 	gem_close(i915, obj.handle);
-- 
2.25.1

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

* [igt-dev] ✓ Fi.CI.BAT: success for tests/i915: skip gem_set_caching call for mtl (rev6)
  2023-03-31 12:47 [igt-dev] [PATCH i-g-t v4] tests/i915: skip gem_set_caching call for mtl Vikas Srivastava
@ 2023-03-31 15:36 ` Patchwork
  2023-04-01 14:34 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2023-03-31 15:36 UTC (permalink / raw)
  To: Vikas Srivastava; +Cc: igt-dev

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

== Series Details ==

Series: tests/i915: skip gem_set_caching call for mtl (rev6)
URL   : https://patchwork.freedesktop.org/series/114544/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_12951 -> IGTPW_8730
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

Participating hosts (37 -> 35)
------------------------------

  Missing    (2): fi-snb-2520m fi-pnv-d510 

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

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

### IGT changes ###

#### Issues hit ####

  * igt@i915_selftest@live@requests:
    - bat-rpls-2:         [PASS][1] -> [ABORT][2] ([i915#7913] / [i915#7982])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12951/bat-rpls-2/igt@i915_selftest@live@requests.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8730/bat-rpls-2/igt@i915_selftest@live@requests.html

  * igt@i915_selftest@live@reset:
    - bat-rpls-1:         [PASS][3] -> [ABORT][4] ([i915#4983])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12951/bat-rpls-1/igt@i915_selftest@live@reset.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8730/bat-rpls-1/igt@i915_selftest@live@reset.html

  * igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence:
    - bat-dg2-11:         NOTRUN -> [SKIP][5] ([i915#5354])
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8730/bat-dg2-11/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence.html

  * igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-c-dp-1:
    - bat-dg2-8:          [PASS][6] -> [FAIL][7] ([i915#7932]) +1 similar issue
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12951/bat-dg2-8/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-c-dp-1.html
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8730/bat-dg2-8/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence@pipe-c-dp-1.html

  
#### Possible fixes ####

  * igt@i915_pm_rps@basic-api:
    - bat-dg2-11:         [FAIL][8] ([i915#8308]) -> [PASS][9]
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12951/bat-dg2-11/igt@i915_pm_rps@basic-api.html
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8730/bat-dg2-11/igt@i915_pm_rps@basic-api.html

  * igt@i915_selftest@live@hangcheck:
    - fi-skl-guc:         [DMESG-WARN][10] ([i915#8073]) -> [PASS][11]
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12951/fi-skl-guc/igt@i915_selftest@live@hangcheck.html
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8730/fi-skl-guc/igt@i915_selftest@live@hangcheck.html

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

  
  [i915#4983]: https://gitlab.freedesktop.org/drm/intel/issues/4983
  [i915#5354]: https://gitlab.freedesktop.org/drm/intel/issues/5354
  [i915#7913]: https://gitlab.freedesktop.org/drm/intel/issues/7913
  [i915#7932]: https://gitlab.freedesktop.org/drm/intel/issues/7932
  [i915#7982]: https://gitlab.freedesktop.org/drm/intel/issues/7982
  [i915#8073]: https://gitlab.freedesktop.org/drm/intel/issues/8073
  [i915#8308]: https://gitlab.freedesktop.org/drm/intel/issues/8308


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

  * CI: CI-20190529 -> None
  * IGT: IGT_7230 -> IGTPW_8730

  CI-20190529: 20190529
  CI_DRM_12951: f128906b94b25a0f0c12dc8c647b8adc8d934d8c @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_8730: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8730/index.html
  IGT_7230: f0485204004305dd3ee8f8bbbb9c552e53a4e050 @ https://gitlab.freedesktop.org/drm/igt-gpu-tools.git

== Logs ==

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

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

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

* [igt-dev] ✓ Fi.CI.IGT: success for tests/i915: skip gem_set_caching call for mtl (rev6)
  2023-03-31 12:47 [igt-dev] [PATCH i-g-t v4] tests/i915: skip gem_set_caching call for mtl Vikas Srivastava
  2023-03-31 15:36 ` [igt-dev] ✓ Fi.CI.BAT: success for tests/i915: skip gem_set_caching call for mtl (rev6) Patchwork
@ 2023-04-01 14:34 ` Patchwork
  2023-04-04  8:24 ` [igt-dev] [PATCH i-g-t v4] tests/i915: skip gem_set_caching call for mtl Kamil Konieczny
  2023-04-06  5:24 ` Dixit, Ashutosh
  3 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2023-04-01 14:34 UTC (permalink / raw)
  To: Vikas Srivastava; +Cc: igt-dev

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

== Series Details ==

Series: tests/i915: skip gem_set_caching call for mtl (rev6)
URL   : https://patchwork.freedesktop.org/series/114544/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_12951_full -> IGTPW_8730_full
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

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

  No changes in participating hosts

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

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

### IGT changes ###

#### Issues hit ####

  * igt@gen9_exec_parse@allowed-single:
    - shard-glk:          [PASS][1] -> [ABORT][2] ([i915#5566])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12951/shard-glk8/igt@gen9_exec_parse@allowed-single.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8730/shard-glk3/igt@gen9_exec_parse@allowed-single.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions:
    - shard-glk:          [PASS][3] -> [FAIL][4] ([i915#2346])
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12951/shard-glk1/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8730/shard-glk1/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions.html

  
#### Possible fixes ####

  * igt@gem_eio@in-flight-contexts-1us:
    - {shard-tglu}:       [TIMEOUT][5] ([i915#3063]) -> [PASS][6]
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12951/shard-tglu-7/igt@gem_eio@in-flight-contexts-1us.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8730/shard-tglu-10/igt@gem_eio@in-flight-contexts-1us.html

  * igt@gem_eio@unwedge-stress:
    - {shard-dg1}:        [FAIL][7] ([i915#5784]) -> [PASS][8]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12951/shard-dg1-14/igt@gem_eio@unwedge-stress.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8730/shard-dg1-18/igt@gem_eio@unwedge-stress.html

  * igt@i915_pm_dc@dc9-dpms:
    - shard-apl:          [SKIP][9] ([fdo#109271]) -> [PASS][10]
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12951/shard-apl6/igt@i915_pm_dc@dc9-dpms.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8730/shard-apl7/igt@i915_pm_dc@dc9-dpms.html

  * igt@i915_pm_rps@engine-order:
    - shard-apl:          [FAIL][11] ([i915#6537]) -> [PASS][12]
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12951/shard-apl1/igt@i915_pm_rps@engine-order.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8730/shard-apl2/igt@i915_pm_rps@engine-order.html

  * igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic:
    - shard-glk:          [FAIL][13] ([i915#72]) -> [PASS][14]
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12951/shard-glk1/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8730/shard-glk9/igt@kms_cursor_legacy@2x-long-flip-vs-cursor-atomic.html

  * igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size:
    - shard-apl:          [FAIL][15] ([i915#2346]) -> [PASS][16]
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_12951/shard-apl2/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8730/shard-apl4/igt@kms_cursor_legacy@flip-vs-cursor-atomic-transitions-varying-size.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#109289]: https://bugs.freedesktop.org/show_bug.cgi?id=109289
  [fdo#109291]: https://bugs.freedesktop.org/show_bug.cgi?id=109291
  [fdo#109307]: https://bugs.freedesktop.org/show_bug.cgi?id=109307
  [fdo#109315]: https://bugs.freedesktop.org/show_bug.cgi?id=109315
  [fdo#109506]: https://bugs.freedesktop.org/show_bug.cgi?id=109506
  [fdo#110189]: https://bugs.freedesktop.org/show_bug.cgi?id=110189
  [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
  [fdo#111615]: https://bugs.freedesktop.org/show_bug.cgi?id=111615
  [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#1072]: https://gitlab.freedesktop.org/drm/intel/issues/1072
  [i915#1397]: https://gitlab.freedesktop.org/drm/intel/issues/1397
  [i915#1839]: https://gitlab.freedesktop.org/drm/intel/issues/1839
  [i915#2346]: https://gitlab.freedesktop.org/drm/intel/issues/2346
  [i915#2434]: https://gitlab.freedesktop.org/drm/intel/issues/2434
  [i915#2437]: https://gitlab.freedesktop.org/drm/intel/issues/2437
  [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#284]: https://gitlab.freedesktop.org/drm/intel/issues/284
  [i915#2842]: https://gitlab.freedesktop.org/drm/intel/issues/2842
  [i915#2856]: https://gitlab.freedesktop.org/drm/intel/issues/2856
  [i915#3063]: https://gitlab.freedesktop.org/drm/intel/issues/3063
  [i915#3281]: https://gitlab.freedesktop.org/drm/intel/issues/3281
  [i915#3282]: https://gitlab.freedesktop.org/drm/intel/issues/3282
  [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#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#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#3742]: https://gitlab.freedesktop.org/drm/intel/issues/3742
  [i915#3840]: https://gitlab.freedesktop.org/drm/intel/issues/3840
  [i915#3886]: https://gitlab.freedesktop.org/drm/intel/issues/3886
  [i915#3938]: https://gitlab.freedesktop.org/drm/intel/issues/3938
  [i915#3989]: https://gitlab.freedesktop.org/drm/intel/issues/3989
  [i915#4036]: https://gitlab.freedesktop.org/drm/intel/issues/4036
  [i915#404]: https://gitlab.freedesktop.org/drm/intel/issues/404
  [i915#4077]: https://gitlab.freedesktop.org/drm/intel/issues/4077
  [i915#4078]: https://gitlab.freedesktop.org/drm/intel/issues/4078
  [i915#4083]: https://gitlab.freedesktop.org/drm/intel/issues/4083
  [i915#4212]: https://gitlab.freedesktop.org/drm/intel/issues/4212
  [i915#4270]: https://gitlab.freedesktop.org/drm/intel/issues/4270
  [i915#4281]: https://gitlab.freedesktop.org/drm/intel/issues/4281
  [i915#433]: https://gitlab.freedesktop.org/drm/intel/issues/433
  [i915#4349]: https://gitlab.freedesktop.org/drm/intel/issues/4349
  [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#4579]: https://gitlab.freedesktop.org/drm/intel/issues/4579
  [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#4818]: https://gitlab.freedesktop.org/drm/intel/issues/4818
  [i915#4833]: https://gitlab.freedesktop.org/drm/intel/issues/4833
  [i915#4852]: https://gitlab.freedesktop.org/drm/intel/issues/4852
  [i915#4859]: https://gitlab.freedesktop.org/drm/intel/issues/4859
  [i915#4860]: https://gitlab.freedesktop.org/drm/intel/issues/4860
  [i915#4873]: https://gitlab.freedesktop.org/drm/intel/issues/4873
  [i915#4879]: https://gitlab.freedesktop.org/drm/intel/issues/4879
  [i915#4880]: https://gitlab.freedesktop.org/drm/intel/issues/4880
  [i915#4884]: https://gitlab.freedesktop.org/drm/intel/issues/4884
  [i915#4885]: https://gitlab.freedesktop.org/drm/intel/issues/4885
  [i915#5176]: https://gitlab.freedesktop.org/drm/intel/issues/5176
  [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#5431]: https://gitlab.freedesktop.org/drm/intel/issues/5431
  [i915#5461]: https://gitlab.freedesktop.org/drm/intel/issues/5461
  [i915#5563]: https://gitlab.freedesktop.org/drm/intel/issues/5563
  [i915#5566]: https://gitlab.freedesktop.org/drm/intel/issues/5566
  [i915#5723]: https://gitlab.freedesktop.org/drm/intel/issues/5723
  [i915#5784]: https://gitlab.freedesktop.org/drm/intel/issues/5784
  [i915#6095]: https://gitlab.freedesktop.org/drm/intel/issues/6095
  [i915#6230]: https://gitlab.freedesktop.org/drm/intel/issues/6230
  [i915#6301]: https://gitlab.freedesktop.org/drm/intel/issues/6301
  [i915#6537]: https://gitlab.freedesktop.org/drm/intel/issues/6537
  [i915#658]: https://gitlab.freedesktop.org/drm/intel/issues/658
  [i915#7116]: https://gitlab.freedesktop.org/drm/intel/issues/7116
  [i915#72]: https://gitlab.freedesktop.org/drm/intel/issues/72
  [i915#7561]: https://gitlab.freedesktop.org/drm/intel/issues/7561
  [i915#7697]: https://gitlab.freedesktop.org/drm/intel/issues/7697
  [i915#7711]: https://gitlab.freedesktop.org/drm/intel/issues/7711
  [i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828
  [i915#8150]: https://gitlab.freedesktop.org/drm/intel/issues/8150


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

  * CI: CI-20190529 -> None
  * IGT: IGT_7230 -> IGTPW_8730
  * Piglit: piglit_4509 -> None

  CI-20190529: 20190529
  CI_DRM_12951: f128906b94b25a0f0c12dc8c647b8adc8d934d8c @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_8730: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_8730/index.html
  IGT_7230: f0485204004305dd3ee8f8bbbb9c552e53a4e050 @ 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_8730/index.html

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

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

* Re: [igt-dev] [PATCH i-g-t v4] tests/i915: skip gem_set_caching call for mtl
  2023-03-31 12:47 [igt-dev] [PATCH i-g-t v4] tests/i915: skip gem_set_caching call for mtl Vikas Srivastava
  2023-03-31 15:36 ` [igt-dev] ✓ Fi.CI.BAT: success for tests/i915: skip gem_set_caching call for mtl (rev6) Patchwork
  2023-04-01 14:34 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
@ 2023-04-04  8:24 ` Kamil Konieczny
  2023-04-06  5:24 ` Dixit, Ashutosh
  3 siblings, 0 replies; 5+ messages in thread
From: Kamil Konieczny @ 2023-04-04  8:24 UTC (permalink / raw)
  To: Vikas Srivastava; +Cc: igt-dev

On 2023-03-31 at 18:17:17 +0530, Vikas Srivastava wrote:
> Call to gem_set_caching skips the test since i915_gem_set_caching_ioctl is
> deprecated for MTL. To avoid this add the check for set caching supported
> platforms.
> 
> FIXME: This is a temp solution to fix the IGT test issues where
> set caching call is used , there is alternate API available
> but support not yet available to use that.Once set_pat_index
> support available need to bring that change replacing this one.
> 
> Signed-off-by: Vikas Srivastava <vikas.srivastava@intel.com>

imho there may be added some improvements later, as it not touches
existing platforms other than MTL:

Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>

--
Kamil

> ---
>  lib/ioctl_wrappers.c                | 14 ++++++++++++++
>  lib/ioctl_wrappers.h                |  1 +
>  tests/i915/gem_caching.c            |  5 +++++
>  tests/i915/gem_exec_flush.c         |  6 ++++--
>  tests/i915/gem_exec_latency.c       |  3 ++-
>  tests/i915/gem_exec_suspend.c       |  6 ++++--
>  tests/i915/gem_render_tiled_blits.c |  3 ++-
>  tests/i915/gem_softpin.c            |  3 ++-
>  tests/i915/gem_userptr_blits.c      | 11 ++++++++---
>  tests/i915/gem_workarounds.c        |  6 ++++--
>  tests/i915/i915_pm_rpm.c            |  7 ++++---
>  tests/prime_vgem.c                  |  3 ++-
>  12 files changed, 52 insertions(+), 16 deletions(-)
> 
> diff --git a/lib/ioctl_wrappers.c b/lib/ioctl_wrappers.c
> index 1ab41ab6d6..ebd8a2f36f 100644
> --- a/lib/ioctl_wrappers.c
> +++ b/lib/ioctl_wrappers.c
> @@ -1297,3 +1297,17 @@ bool igt_has_drm_cap(int fd, uint64_t capability)
>  	igt_assert(drmIoctl(fd, DRM_IOCTL_GET_CAP, &cap) == 0);
>  	return cap.value;
>  }
> +
> +/**
> + * igt_has_set_caching:
> + * @devid: platform id.
> + *
> + * This helper verifies if the passed platform id
> + * has support for setting cache.
> + *
> + * Returns: Whether the cache setting  is supported or not.
> + */
> +bool igt_has_set_caching(uint32_t devid)
> +{
> +	return IS_METEORLAKE(devid) ? false : true;
> +}
> diff --git a/lib/ioctl_wrappers.h b/lib/ioctl_wrappers.h
> index e4d7c0d408..4c232078d0 100644
> --- a/lib/ioctl_wrappers.h
> +++ b/lib/ioctl_wrappers.h
> @@ -145,6 +145,7 @@ void prime_sync_end(int dma_buf_fd, bool write);
>  bool igt_has_fb_modifiers(int fd);
>  void igt_require_fb_modifiers(int fd);
>  bool igt_has_drm_cap(int fd, uint64_t capability);
> +bool igt_has_set_caching(uint32_t devid);
>  
>  /**
>   * __kms_addfb:
> diff --git a/tests/i915/gem_caching.c b/tests/i915/gem_caching.c
> index eb0170abca..d0c7aa035f 100644
> --- a/tests/i915/gem_caching.c
> +++ b/tests/i915/gem_caching.c
> @@ -158,6 +158,11 @@ igt_main
>  			igt_info("coherency broken on i965g/gm\n");
>  			flags = 0;
>  		}
> +
> +		if (!gem_has_lmem(data.fd))
> +			igt_require_f(igt_has_set_caching(data.devid),
> +				      " cache setting not supported on this target\n");
> +
>  		data.bops = buf_ops_create(data.fd);
>  
>  		scratch_buf = intel_buf_create(data.bops, BO_SIZE/4, 1,
> diff --git a/tests/i915/gem_exec_flush.c b/tests/i915/gem_exec_flush.c
> index bb120e0d6c..42ddbc529e 100644
> --- a/tests/i915/gem_exec_flush.c
> +++ b/tests/i915/gem_exec_flush.c
> @@ -142,7 +142,8 @@ static void run(int fd, unsigned ring, int nchild, int timeout,
>  				       I915_GEM_DOMAIN_WC);
>  		} else {
>  			snoop = flags & COHERENT;
> -			gem_set_caching(fd, obj[0].handle, snoop);
> +			if (igt_has_set_caching(intel_get_drm_devid(fd)))
> +				gem_set_caching(fd, obj[0].handle, snoop);
>  			map = gem_mmap__cpu(fd, obj[0].handle, 0, 4096, PROT_WRITE);
>  			gem_set_domain(fd, obj[0].handle,
>  				       I915_GEM_DOMAIN_CPU,
> @@ -401,7 +402,8 @@ static void batch(int fd, unsigned ring, int nchild, int timeout,
>  		obj[0].handle = gem_create(fd, 4096);
>  		obj[0].flags |= EXEC_OBJECT_WRITE;
>  
> -		gem_set_caching(fd, obj[0].handle, !!(flags & COHERENT));
> +		if (igt_has_set_caching(intel_get_drm_devid(fd)))
> +			gem_set_caching(fd, obj[0].handle, !!(flags & COHERENT));
>  		map = gem_mmap__cpu(fd, obj[0].handle, 0, 4096, PROT_WRITE);
>  
>  		gem_set_domain(fd, obj[0].handle,
> diff --git a/tests/i915/gem_exec_latency.c b/tests/i915/gem_exec_latency.c
> index fcdf7787b8..4838a70820 100644
> --- a/tests/i915/gem_exec_latency.c
> +++ b/tests/i915/gem_exec_latency.c
> @@ -770,7 +770,8 @@ static void context_switch(int i915, const intel_ctx_t *ctx,
>  
>  	memset(obj, 0, sizeof(obj));
>  	obj[0].handle = gem_create(i915, 4096);
> -	gem_set_caching(i915, obj[0].handle, 1);
> +	if (igt_has_set_caching(intel_get_drm_devid(i915)))
> +		gem_set_caching(i915, obj[0].handle, 1);
>  	results = gem_mmap__cpu(i915, obj[0].handle, 0, 4096, PROT_READ);
>  	gem_set_domain(i915, obj[0].handle, I915_GEM_DOMAIN_CPU, 0);
>  
> diff --git a/tests/i915/gem_exec_suspend.c b/tests/i915/gem_exec_suspend.c
> index 1dadf06df0..8d56093faa 100644
> --- a/tests/i915/gem_exec_suspend.c
> +++ b/tests/i915/gem_exec_suspend.c
> @@ -116,8 +116,10 @@ static void run_test(int fd, const intel_ctx_t *ctx,
>  
>  	memset(obj, 0, sizeof(obj));
>  	obj[0].handle = gem_create_in_memory_regions(fd, 4096, region);
> -	if (!gem_has_lmem(fd))
> -		gem_set_caching(fd, obj[0].handle, !!(flags & CACHED));
> +	if (!gem_has_lmem(fd)) {
> +		if (igt_has_set_caching(intel_get_drm_devid(fd)))
> +			gem_set_caching(fd, obj[0].handle, !!(flags & CACHED));
> +	}
>  	obj[0].flags |= EXEC_OBJECT_WRITE;
>  	obj[1].handle = gem_create_in_memory_regions(fd, 4096, region);
>  	gem_write(fd, obj[1].handle, 0, &bbe, sizeof(bbe));
> diff --git a/tests/i915/gem_render_tiled_blits.c b/tests/i915/gem_render_tiled_blits.c
> index eae06a332e..3becf576fe 100644
> --- a/tests/i915/gem_render_tiled_blits.c
> +++ b/tests/i915/gem_render_tiled_blits.c
> @@ -117,7 +117,8 @@ static void run_test (int fd, int count)
>  	intel_buf_init(bops, &linear, WIDTH, HEIGHT, 32, 0,
>  		       I915_TILING_NONE, I915_COMPRESSION_NONE);
>  	if (snoop) {
> -		gem_set_caching(fd, linear.handle, 1);
> +		if (igt_has_set_caching(intel_get_drm_devid(fd)))
> +			gem_set_caching(fd, linear.handle, 1);
>  		igt_info("Using a snoop linear buffer for comparisons\n");
>  	}
>  
> diff --git a/tests/i915/gem_softpin.c b/tests/i915/gem_softpin.c
> index 7682f772a1..8717860b2d 100644
> --- a/tests/i915/gem_softpin.c
> +++ b/tests/i915/gem_softpin.c
> @@ -525,7 +525,8 @@ static void test_evict_snoop(int fd, unsigned int flags)
>  	/* Create a snoop + uncached pair */
>  	object[0].handle = gem_create(fd, 4096);
>  	object[0].flags = EXEC_OBJECT_PINNED;
> -	gem_set_caching(fd, object[0].handle, 1);
> +	if (igt_has_set_caching(intel_get_drm_devid(fd)))
> +		gem_set_caching(fd, object[0].handle, 1);
>  	object[1].handle = gem_create(fd, 4096);
>  	object[1].flags = EXEC_OBJECT_PINNED;
>  	gem_write(fd, object[1].handle, 4096-sizeof(bbe), &bbe, sizeof(bbe));
> diff --git a/tests/i915/gem_userptr_blits.c b/tests/i915/gem_userptr_blits.c
> index 07a453229a..b97e541118 100644
> --- a/tests/i915/gem_userptr_blits.c
> +++ b/tests/i915/gem_userptr_blits.c
> @@ -1147,8 +1147,10 @@ static void test_relocations(int fd)
>  	memset(&obj, 0, sizeof(obj));
>  	igt_assert(posix_memalign(&ptr, PAGE_SIZE, size) == 0);
>  	gem_userptr(fd, ptr, size, 0, userptr_flags, &obj.handle);
> -	if (!gem_has_llc(fd))
> -		gem_set_caching(fd, obj.handle, 0);
> +	if (!gem_has_llc(fd)) {
> +		if (igt_has_set_caching(intel_get_drm_devid(fd)))
> +			gem_set_caching(fd, obj.handle, 0);
> +	}
>  	*(uint32_t *)ptr = MI_BATCH_BUFFER_END;
>  
>  	reloc = (typeof(reloc))((char *)ptr + PAGE_SIZE);
> @@ -2417,8 +2419,11 @@ igt_main_args("c:", NULL, help_str, opt_handler, NULL)
>  			test_sd_probe(fd);
>  		}
>  
> -		igt_subtest("set-cache-level")
> +		igt_subtest("set-cache-level") {
> +			igt_require_f(igt_has_set_caching(intel_get_drm_devid(fd)),
> +				      "set_caching not supported on this platform");
>  			test_set_caching(fd);
> +		}
>  
>  		igt_subtest("userfault")
>  			test_userfault(fd);
> diff --git a/tests/i915/gem_workarounds.c b/tests/i915/gem_workarounds.c
> index 30c68d1ac9..7d11996254 100644
> --- a/tests/i915/gem_workarounds.c
> +++ b/tests/i915/gem_workarounds.c
> @@ -106,8 +106,10 @@ static int workaround_fail_count(int i915, const intel_ctx_t *ctx)
>  
>  	memset(obj, 0, sizeof(obj));
>  	obj[0].handle = gem_create(i915, result_sz);
> -	if (!gem_has_lmem(i915))
> -		gem_set_caching(i915, obj[0].handle, I915_CACHING_CACHED);
> +	if (!gem_has_lmem(i915)) {
> +		if (igt_has_set_caching(intel_get_drm_devid(i915)))
> +			gem_set_caching(i915, obj[0].handle, I915_CACHING_CACHED);
> +	}
>  	obj[1].handle = gem_create(i915, batch_sz);
>  	obj[1].relocs_ptr = to_user_pointer(reloc);
>  	obj[1].relocation_count = !ahnd ? num_wa_regs : 0;
> diff --git a/tests/i915/i915_pm_rpm.c b/tests/i915/i915_pm_rpm.c
> index 74935430c1..9a6408dd37 100644
> --- a/tests/i915/i915_pm_rpm.c
> +++ b/tests/i915/i915_pm_rpm.c
> @@ -1995,8 +1995,8 @@ static void pm_test_caching(void)
>  
>  	for (i = 0; i < ARRAY_SIZE(cache_levels); i++) {
>  		igt_assert(wait_for_suspended());
> -		gem_set_caching(drm_fd, handle, default_cache_level);
> -
> +		if (igt_has_set_caching(intel_get_drm_devid(drm_fd)))
> +			gem_set_caching(drm_fd, handle, default_cache_level);
>  		/* Ensure we bind the vma into the GGTT */
>  		memset(gem_buf, 16 << i, gtt_obj_max_size);
>  
> @@ -2008,7 +2008,8 @@ static void pm_test_caching(void)
>  		 */
>  		igt_debug("Setting cache level %u\n", cache_levels[i]);
>  		igt_assert(wait_for_suspended());
> -		gem_set_caching(drm_fd, handle, cache_levels[i]);
> +		if (igt_has_set_caching(intel_get_drm_devid(drm_fd)))
> +			gem_set_caching(drm_fd, handle, cache_levels[i]);
>  	}
>  
>  	igt_assert(munmap(gem_buf, gtt_obj_max_size) == 0);
> diff --git a/tests/prime_vgem.c b/tests/prime_vgem.c
> index 7b473c03df..9aa767c9cd 100644
> --- a/tests/prime_vgem.c
> +++ b/tests/prime_vgem.c
> @@ -330,7 +330,8 @@ static void test_userptr(int vgem, int i915)
>  	*ptr = MI_BATCH_BUFFER_END;
>  
>  	gem_userptr(i915, ptr, scratch.size, 0, 0, &obj.handle);
> -	gem_set_caching(i915, obj.handle, I915_CACHING_NONE); /* for !llc exec */
> +	if (igt_has_set_caching(intel_get_drm_devid(i915)))
> +		gem_set_caching(i915, obj.handle, I915_CACHING_NONE); /* for !llc exec */
>  
>  	gem_execbuf(i915, &execbuf);
>  	gem_close(i915, obj.handle);
> -- 
> 2.25.1
> 

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

* Re: [igt-dev] [PATCH i-g-t v4] tests/i915: skip gem_set_caching call for mtl
  2023-03-31 12:47 [igt-dev] [PATCH i-g-t v4] tests/i915: skip gem_set_caching call for mtl Vikas Srivastava
                   ` (2 preceding siblings ...)
  2023-04-04  8:24 ` [igt-dev] [PATCH i-g-t v4] tests/i915: skip gem_set_caching call for mtl Kamil Konieczny
@ 2023-04-06  5:24 ` Dixit, Ashutosh
  3 siblings, 0 replies; 5+ messages in thread
From: Dixit, Ashutosh @ 2023-04-06  5:24 UTC (permalink / raw)
  To: Vikas Srivastava; +Cc: igt-dev

On Fri, 31 Mar 2023 05:47:17 -0700, Vikas Srivastava wrote:
>
> diff --git a/lib/ioctl_wrappers.c b/lib/ioctl_wrappers.c
> index 1ab41ab6d6..ebd8a2f36f 100644
> --- a/lib/ioctl_wrappers.c
> +++ b/lib/ioctl_wrappers.c
> @@ -1297,3 +1297,17 @@ bool igt_has_drm_cap(int fd, uint64_t capability)
>	igt_assert(drmIoctl(fd, DRM_IOCTL_GET_CAP, &cap) == 0);
>	return cap.value;
>  }
> +
> +/**
> + * igt_has_set_caching:
> + * @devid: platform id.
> + *
> + * This helper verifies if the passed platform id
> + * has support for setting cache.
> + *
> + * Returns: Whether the cache setting  is supported or not.
> + */
> +bool igt_has_set_caching(uint32_t devid)
> +{
> +	return IS_METEORLAKE(devid) ? false : true;

Can we include the gem_has_lmem condition below here too?


> +}
> diff --git a/lib/ioctl_wrappers.h b/lib/ioctl_wrappers.h
> index e4d7c0d408..4c232078d0 100644
> --- a/lib/ioctl_wrappers.h
> +++ b/lib/ioctl_wrappers.h
> @@ -145,6 +145,7 @@ void prime_sync_end(int dma_buf_fd, bool write);
>  bool igt_has_fb_modifiers(int fd);
>  void igt_require_fb_modifiers(int fd);
>  bool igt_has_drm_cap(int fd, uint64_t capability);
> +bool igt_has_set_caching(uint32_t devid);
>
>  /**
>   * __kms_addfb:
> diff --git a/tests/i915/gem_caching.c b/tests/i915/gem_caching.c
> index eb0170abca..d0c7aa035f 100644
> --- a/tests/i915/gem_caching.c
> +++ b/tests/i915/gem_caching.c
> @@ -158,6 +158,11 @@ igt_main
>			igt_info("coherency broken on i965g/gm\n");
>			flags = 0;
>		}
> +
> +		if (!gem_has_lmem(data.fd))
> +			igt_require_f(igt_has_set_caching(data.devid),
> +				      " cache setting not supported on this target\n");
> +
>		data.bops = buf_ops_create(data.fd);
>
>		scratch_buf = intel_buf_create(data.bops, BO_SIZE/4, 1,

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

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

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-03-31 12:47 [igt-dev] [PATCH i-g-t v4] tests/i915: skip gem_set_caching call for mtl Vikas Srivastava
2023-03-31 15:36 ` [igt-dev] ✓ Fi.CI.BAT: success for tests/i915: skip gem_set_caching call for mtl (rev6) Patchwork
2023-04-01 14:34 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2023-04-04  8:24 ` [igt-dev] [PATCH i-g-t v4] tests/i915: skip gem_set_caching call for mtl Kamil Konieczny
2023-04-06  5:24 ` Dixit, Ashutosh

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