Igt-dev Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t 3/5] tests/i915/kms_frontbuffer_tracking: all gem ioctls are not supported for xe as of now
  2023-06-01 11:48 [igt-dev] [PATCH i-g-t 0/5] RFC Enable kms_frontbuffer_tracking on XE Kunal Joshi
@ 2023-06-01 11:48 ` Kunal Joshi
  0 siblings, 0 replies; 16+ messages in thread
From: Kunal Joshi @ 2023-06-01 11:48 UTC (permalink / raw)
  To: igt-dev; +Cc: Kunal Joshi

Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
---
 tests/i915/kms_frontbuffer_tracking.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tests/i915/kms_frontbuffer_tracking.c b/tests/i915/kms_frontbuffer_tracking.c
index 9b4c6e59..e31918e8 100644
--- a/tests/i915/kms_frontbuffer_tracking.c
+++ b/tests/i915/kms_frontbuffer_tracking.c
@@ -3700,7 +3700,8 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
 	t.flip = FLIP_PAGEFLIP;
 	t.tiling = opt.tiling;
 	igt_subtest("basic") {
-		igt_require_gem(drm.fd);
+		if (!is_xe_device(drm.fd))
+			igt_require_gem(drm.fd);
 		basic_subtest(&t);
 	}
 
-- 
2.25.1

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

* [igt-dev] [PATCH i-g-t 3/5] tests/i915/kms_frontbuffer_tracking: all gem ioctls are not supported for xe as of now
  2023-06-06  8:02 Kunal Joshi
@ 2023-06-06  8:02 ` Kunal Joshi
  0 siblings, 0 replies; 16+ messages in thread
From: Kunal Joshi @ 2023-06-06  8:02 UTC (permalink / raw)
  To: igt-dev; +Cc: kunal1.joshi

XE doesn't support all gem ioctls

Open :- Find replacement for igt_require_gem() for xe

Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
---
 tests/i915/kms_frontbuffer_tracking.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tests/i915/kms_frontbuffer_tracking.c b/tests/i915/kms_frontbuffer_tracking.c
index 4bb4b2f5..9561abef 100644
--- a/tests/i915/kms_frontbuffer_tracking.c
+++ b/tests/i915/kms_frontbuffer_tracking.c
@@ -3700,7 +3700,8 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
 	t.flip = FLIP_PAGEFLIP;
 	t.tiling = opt.tiling;
 	igt_subtest("basic") {
-		igt_require_gem(drm.fd);
+		if (!is_xe_device(drm.fd))
+			igt_require_gem(drm.fd);
 		basic_subtest(&t);
 	}
 
-- 
2.34.1

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

* [igt-dev] [PATCH i-g-t 0/5] RFC Enable kms_frontbuffer_tracking on XE
@ 2023-06-09 10:12 Kunal Joshi
  2023-06-09 10:12 ` [igt-dev] [PATCH i-g-t 1/5] RFC tests/i915/kms_frontbuffer_tracking: Add xe support Kunal Joshi
                   ` (6 more replies)
  0 siblings, 7 replies; 16+ messages in thread
From: Kunal Joshi @ 2023-06-09 10:12 UTC (permalink / raw)
  To: igt-dev; +Cc: kunal1.joshi

This series is intended to extend kms_frontbuffer_tracking
test to be supported on xe driver

Kunal Joshi (5):
  RFC tests/i915/kms_frontbuffer_tracking: Add xe support
  RFC tests/i915/kms_frontbuffer_tracking: xe doesn't support tiling as
    of now
  tests/i915/kms_frontbuffer_tracking: all gem ioctls are not supported
    for xe as of now
  RFC lib/ioctl_wrappers: GEM_SET_DOMAIN ioctl not supported on xe
  RFC tests/i915/kms_frontbuffer_tracking: xe only supports MMAP_WC,
    BLT, RENDER

 tests/i915/kms_frontbuffer_tracking.c | 84 +++++++++++++++++++--------
 1 file changed, 61 insertions(+), 23 deletions(-)

-- 
2.34.1

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

* [igt-dev] [PATCH i-g-t 1/5] RFC tests/i915/kms_frontbuffer_tracking: Add xe support
  2023-06-09 10:12 [igt-dev] [PATCH i-g-t 0/5] RFC Enable kms_frontbuffer_tracking on XE Kunal Joshi
@ 2023-06-09 10:12 ` Kunal Joshi
  2023-06-12  5:23   ` Modem, Bhanuprakash
  2023-06-09 10:12 ` [igt-dev] [PATCH i-g-t 2/5] RFC tests/i915/kms_frontbuffer_tracking: xe doesn't support tiling as of now Kunal Joshi
                   ` (5 subsequent siblings)
  6 siblings, 1 reply; 16+ messages in thread
From: Kunal Joshi @ 2023-06-09 10:12 UTC (permalink / raw)
  To: igt-dev; +Cc: kunal1.joshi

Add support for DRIVER_XE

Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
---
 tests/i915/kms_frontbuffer_tracking.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tests/i915/kms_frontbuffer_tracking.c b/tests/i915/kms_frontbuffer_tracking.c
index 650e14a7..c2b99670 100644
--- a/tests/i915/kms_frontbuffer_tracking.c
+++ b/tests/i915/kms_frontbuffer_tracking.c
@@ -1338,7 +1338,7 @@ static void init_crcs(enum pixel_format format, enum tiling_type tiling,
 
 static void setup_drm(void)
 {
-	drm.fd = drm_open_driver_master(DRIVER_INTEL);
+	drm.fd = drm_open_driver_master(DRIVER_INTEL | DRIVER_XE);
 	drm.debugfs = igt_debugfs_dir(drm.fd);
 
 	kmstest_set_vt_graphics_mode();
-- 
2.34.1

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

* [igt-dev] [PATCH i-g-t 2/5] RFC tests/i915/kms_frontbuffer_tracking: xe doesn't support tiling as of now
  2023-06-09 10:12 [igt-dev] [PATCH i-g-t 0/5] RFC Enable kms_frontbuffer_tracking on XE Kunal Joshi
  2023-06-09 10:12 ` [igt-dev] [PATCH i-g-t 1/5] RFC tests/i915/kms_frontbuffer_tracking: Add xe support Kunal Joshi
@ 2023-06-09 10:12 ` Kunal Joshi
  2023-06-12  5:26   ` Modem, Bhanuprakash
  2023-06-09 10:12 ` [igt-dev] [PATCH i-g-t 3/5] tests/i915/kms_frontbuffer_tracking: all gem ioctls are not supported for xe " Kunal Joshi
                   ` (4 subsequent siblings)
  6 siblings, 1 reply; 16+ messages in thread
From: Kunal Joshi @ 2023-06-09 10:12 UTC (permalink / raw)
  To: igt-dev; +Cc: kunal1.joshi

XE doesn't support tiling as of now, so set tiling to linear

v2: use is_xe_device() instead of static variable (Jouni)
    assert if xe device and unsupported tiling method specified
    in opt handler (Jouni)
v3: Fix condition in igt_assert
v4: Keep tiling check in igt_require (Bhanu)

Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
---
 tests/i915/kms_frontbuffer_tracking.c | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/tests/i915/kms_frontbuffer_tracking.c b/tests/i915/kms_frontbuffer_tracking.c
index c2b99670..45a601fe 100644
--- a/tests/i915/kms_frontbuffer_tracking.c
+++ b/tests/i915/kms_frontbuffer_tracking.c
@@ -1341,6 +1341,19 @@ static void setup_drm(void)
 	drm.fd = drm_open_driver_master(DRIVER_INTEL | DRIVER_XE);
 	drm.debugfs = igt_debugfs_dir(drm.fd);
 
+	/*
+	 * Assert if xe device and tiling method specified
+	 * in opt_handler
+	 */
+	igt_assert(is_i915_device(drm.fd) || (is_xe_device(drm.fd) && (opt.tiling == TILING_DEFAULT ||
+		   opt.tiling == TILING_LINEAR)));
+
+	/*
+	 * XE only support linear tiling
+	 */
+	if (is_xe_device(drm.fd))
+		opt.tiling = TILING_LINEAR;
+
 	kmstest_set_vt_graphics_mode();
 	igt_display_require(&drm.display, drm.fd);
 
@@ -3634,6 +3647,7 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
 
 			for (t.tiling = TILING_LINEAR; t.tiling < TILING_COUNT;
 			     t.tiling++) {
+
 				if (t.tiling == TILING_X)
 					continue;
 
@@ -3646,6 +3660,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
 					      feature_str(t.feature),
 					      tiling_str(t.tiling)) {
 
+					if (is_xe_device(drm.fd))
+						igt_require(t.tiling == TILING_LINEAR);
+
 					/* Tiling Y is only supported on GEN9+ */
 					if (t.tiling == TILING_Y) {
 						igt_require(AT_LEAST_GEN(devid, 9));
-- 
2.34.1

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

* [igt-dev] [PATCH i-g-t 3/5] tests/i915/kms_frontbuffer_tracking: all gem ioctls are not supported for xe as of now
  2023-06-09 10:12 [igt-dev] [PATCH i-g-t 0/5] RFC Enable kms_frontbuffer_tracking on XE Kunal Joshi
  2023-06-09 10:12 ` [igt-dev] [PATCH i-g-t 1/5] RFC tests/i915/kms_frontbuffer_tracking: Add xe support Kunal Joshi
  2023-06-09 10:12 ` [igt-dev] [PATCH i-g-t 2/5] RFC tests/i915/kms_frontbuffer_tracking: xe doesn't support tiling as of now Kunal Joshi
@ 2023-06-09 10:12 ` Kunal Joshi
  2023-06-12  5:37   ` Modem, Bhanuprakash
  2023-06-09 10:12 ` [igt-dev] [PATCH i-g-t 4/5] RFC lib/ioctl_wrappers: GEM_SET_DOMAIN ioctl not supported on xe Kunal Joshi
                   ` (3 subsequent siblings)
  6 siblings, 1 reply; 16+ messages in thread
From: Kunal Joshi @ 2023-06-09 10:12 UTC (permalink / raw)
  To: igt-dev; +Cc: kunal1.joshi

XE doesn't support all gem ioctls
Open :- Find replacement for igt_require_gem() for xe

Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
---
 tests/i915/kms_frontbuffer_tracking.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tests/i915/kms_frontbuffer_tracking.c b/tests/i915/kms_frontbuffer_tracking.c
index 45a601fe..09bfd3c3 100644
--- a/tests/i915/kms_frontbuffer_tracking.c
+++ b/tests/i915/kms_frontbuffer_tracking.c
@@ -3701,7 +3701,8 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
 	t.flip = FLIP_PAGEFLIP;
 	t.tiling = opt.tiling;
 	igt_subtest("basic") {
-		igt_require_gem(drm.fd);
+		if (!is_xe_device(drm.fd))
+			igt_require_gem(drm.fd);
 		basic_subtest(&t);
 	}
 
-- 
2.34.1

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

* [igt-dev] [PATCH i-g-t 4/5] RFC lib/ioctl_wrappers: GEM_SET_DOMAIN ioctl not supported on xe
  2023-06-09 10:12 [igt-dev] [PATCH i-g-t 0/5] RFC Enable kms_frontbuffer_tracking on XE Kunal Joshi
                   ` (2 preceding siblings ...)
  2023-06-09 10:12 ` [igt-dev] [PATCH i-g-t 3/5] tests/i915/kms_frontbuffer_tracking: all gem ioctls are not supported for xe " Kunal Joshi
@ 2023-06-09 10:12 ` Kunal Joshi
  2023-06-12  5:38   ` Modem, Bhanuprakash
  2023-06-09 10:12 ` [igt-dev] [PATCH i-g-t 5/5] RFC tests/i915/kms_frontbuffer_tracking: xe only supports MMAP_WC, BLT, RENDER Kunal Joshi
                   ` (2 subsequent siblings)
  6 siblings, 1 reply; 16+ messages in thread
From: Kunal Joshi @ 2023-06-09 10:12 UTC (permalink / raw)
  To: igt-dev; +Cc: kunal1.joshi

xe doesn't support GEM_SET_DOMAIN ioctl

v2: Keep i915 specific check in test only

Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
---
 tests/i915/kms_frontbuffer_tracking.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/tests/i915/kms_frontbuffer_tracking.c b/tests/i915/kms_frontbuffer_tracking.c
index 09bfd3c3..7159cd37 100644
--- a/tests/i915/kms_frontbuffer_tracking.c
+++ b/tests/i915/kms_frontbuffer_tracking.c
@@ -1573,7 +1573,8 @@ static void do_flush(const struct test_mode *t)
 	struct modeset_params *params = pick_params(t);
 	struct fb_region *target = pick_target(t, params);
 
-	gem_set_domain(drm.fd, target->fb->gem_handle, I915_GEM_DOMAIN_GTT, 0);
+	if (is_i915_device(drm.fd))
+		gem_set_domain(drm.fd, target->fb->gem_handle, I915_GEM_DOMAIN_GTT, 0);
 }
 
 #define DONT_ASSERT_CRC			(1 << 0)
-- 
2.34.1

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

* [igt-dev] [PATCH i-g-t 5/5] RFC tests/i915/kms_frontbuffer_tracking: xe only supports MMAP_WC, BLT, RENDER
  2023-06-09 10:12 [igt-dev] [PATCH i-g-t 0/5] RFC Enable kms_frontbuffer_tracking on XE Kunal Joshi
                   ` (3 preceding siblings ...)
  2023-06-09 10:12 ` [igt-dev] [PATCH i-g-t 4/5] RFC lib/ioctl_wrappers: GEM_SET_DOMAIN ioctl not supported on xe Kunal Joshi
@ 2023-06-09 10:12 ` Kunal Joshi
  2023-06-12  5:40   ` Modem, Bhanuprakash
  2023-06-09 17:39 ` [igt-dev] ✗ Fi.CI.BAT: failure for RFC Enable kms_frontbuffer_tracking on XE (rev5) Patchwork
  2023-06-12  5:44 ` [igt-dev] [PATCH i-g-t 0/5] RFC Enable kms_frontbuffer_tracking on XE Modem, Bhanuprakash
  6 siblings, 1 reply; 16+ messages in thread
From: Kunal Joshi @ 2023-06-09 10:12 UTC (permalink / raw)
  To: igt-dev; +Cc: kunal1.joshi

xe only supports MMAP_WC, BLT and RENDER methods,

Open :- does draw method give guarantee for fb to be rendered
on return, if not how to assure, ex for RENDER we have intel_bb_sync

v2: use igt_draw_supports_method (Bhanu)
    Remove check from macro and put it in igt_require at test level
    (Bhanu)

Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
---
 tests/i915/kms_frontbuffer_tracking.c | 59 ++++++++++++++++++---------
 1 file changed, 39 insertions(+), 20 deletions(-)

diff --git a/tests/i915/kms_frontbuffer_tracking.c b/tests/i915/kms_frontbuffer_tracking.c
index 7159cd37..b8dd5cd5 100644
--- a/tests/i915/kms_frontbuffer_tracking.c
+++ b/tests/i915/kms_frontbuffer_tracking.c
@@ -1307,11 +1307,13 @@ static void init_crcs(enum pixel_format format, enum tiling_type tiling,
 		for (r = 0; r < pattern->n_rects; r++)
 			for (r_ = 0; r_ <= r; r_++)
 				draw_rect_igt_fb(pattern, &tmp_fbs[r],
-						 IGT_DRAW_PWRITE, r_);
+						 igt_draw_supports_method(drm.fd, IGT_DRAW_PWRITE) ?
+						 IGT_DRAW_PWRITE : IGT_DRAW_RENDER,
+						 r_);
 	} else {
 		for (r = 0; r < pattern->n_rects; r++)
-			draw_rect_igt_fb(pattern, &tmp_fbs[r], IGT_DRAW_PWRITE,
-					 r);
+			draw_rect_igt_fb(pattern, &tmp_fbs[r], igt_draw_supports_method(drm.fd, IGT_DRAW_PWRITE) ?
+					 IGT_DRAW_PWRITE : IGT_DRAW_RENDER, r);
 	}
 
 	igt_output_set_pipe(prim_mode_params.output, prim_mode_params.pipe);
@@ -2048,9 +2050,6 @@ static void draw_subtest(const struct test_mode *t)
 	struct modeset_params *params = pick_params(t);
 	struct fb_region *target;
 
-	igt_skip_on(t->method == IGT_DRAW_MMAP_GTT &&
-		    !gem_has_mappable_ggtt(drm.fd));
-
 	switch (t->screen) {
 	case SCREEN_PRIM:
 		if (t->method != IGT_DRAW_MMAP_GTT && t->plane == PLANE_PRI)
@@ -2150,9 +2149,8 @@ static void multidraw_subtest(const struct test_mode *t)
 				  igt_draw_get_method_name(m1),
 				  igt_draw_get_method_name(m2));
 
-			if ((m1 == IGT_DRAW_MMAP_GTT ||
-			     m2 == IGT_DRAW_MMAP_GTT) &&
-			    !gem_has_mappable_ggtt(drm.fd))
+			if (!igt_draw_supports_method(drm.fd, m1) ||
+			    !igt_draw_supports_method(drm.fd, m2))
 				continue;
 
 			for (r = 0; r < pattern->n_rects; r++) {
@@ -2421,9 +2419,6 @@ static void flip_subtest(const struct test_mode *t)
 	struct draw_pattern_info *pattern = &pattern1;
 	enum color bg_color;
 
-	igt_skip_on(t->method == IGT_DRAW_MMAP_GTT &&
-		    !gem_has_mappable_ggtt(drm.fd));
-
 	switch (t->screen) {
 	case SCREEN_PRIM:
 		assertions |= ASSERT_LAST_ACTION_CHANGED;
@@ -2483,9 +2478,6 @@ static void fliptrack_subtest(const struct test_mode *t, enum flip_type type)
 	struct modeset_params *params = pick_params(t);
 	struct draw_pattern_info *pattern = &pattern1;
 
-	igt_skip_on(t->method == IGT_DRAW_MMAP_GTT &&
-		    !gem_has_mappable_ggtt(drm.fd));
-
 	prepare_subtest(t, pattern);
 
 	create_fb(t->format, params->primary.fb->width, params->primary.fb->height,
@@ -2895,9 +2887,6 @@ static void farfromfence_subtest(const struct test_mode *t)
 	int max_height, assertions = 0;
 	int gen = intel_display_ver(intel_get_drm_devid(drm.fd));
 
-	igt_skip_on(t->method == IGT_DRAW_MMAP_GTT &&
-		    !gem_has_mappable_ggtt(drm.fd));
-
 	switch (gen) {
 	case 2:
 		max_height = 2048;
@@ -3181,8 +3170,7 @@ static void basic_subtest(const struct test_mode *t)
 	fb1 = params->primary.fb;
 
 	for (r = 0, method = 0; method < IGT_DRAW_METHOD_COUNT; method++) {
-		if (method == IGT_DRAW_MMAP_GTT &&
-		    !gem_has_mappable_ggtt(drm.fd))
+		if (!igt_draw_supports_method(drm.fd, method))
 			continue;
 
 		if (r == pattern->n_rects) {
@@ -3487,6 +3475,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
 	}
 
 	TEST_MODE_ITER_BEGIN(t)
+		igt_fixture
+			igt_require(igt_draw_supports_method(drm.fd, t.method));
+
 		igt_subtest_f("%s-%s-%s-%s-%s-draw-%s",
 			      feature_str(t.feature),
 			      pipes_str(t.pipes),
@@ -3503,6 +3494,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
 		    (!opt.show_hidden && t.method != IGT_DRAW_BLT))
 			continue;
 
+		igt_fixture
+			igt_require(igt_draw_supports_method(drm.fd, t.method));
+
 		for (t.flip = 0; t.flip < FLIP_COUNT; t.flip++)
 			igt_subtest_f("%s-%s-%s-%s-%sflip-%s",
 				      feature_str(t.feature),
@@ -3521,6 +3515,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
 		    (t.feature & FEATURE_FBC) == 0)
 			continue;
 
+		igt_fixture
+			igt_require(igt_draw_supports_method(drm.fd, t.method));
+
 		igt_subtest_f("%s-%s-%s-fliptrack-%s",
 			      feature_str(t.feature),
 			      pipes_str(t.pipes),
@@ -3535,6 +3532,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
 		    t.plane == PLANE_PRI)
 			continue;
 
+		igt_fixture
+			igt_require(igt_draw_supports_method(drm.fd, t.method));
+
 		igt_subtest_f("%s-%s-%s-%s-%s-move",
 			      feature_str(t.feature),
 			      pipes_str(t.pipes),
@@ -3558,6 +3558,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
 		    t.plane != PLANE_SPR)
 			continue;
 
+		igt_fixture
+			igt_require(igt_draw_supports_method(drm.fd, t.method));
+
 		igt_subtest_f("%s-%s-%s-%s-%s-fullscreen",
 			      feature_str(t.feature),
 			      pipes_str(t.pipes),
@@ -3574,6 +3577,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
 		    (!opt.show_hidden && t.fbs != FBS_INDIVIDUAL))
 			continue;
 
+		igt_fixture
+			igt_require(igt_draw_supports_method(drm.fd, t.method));
+
 		igt_subtest_f("%s-%s-%s-%s-multidraw",
 			      feature_str(t.feature),
 			      pipes_str(t.pipes),
@@ -3590,6 +3596,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
 		    t.method != IGT_DRAW_MMAP_GTT)
 			continue;
 
+		igt_fixture
+			igt_require(igt_draw_supports_method(drm.fd, t.method));
+
 		igt_subtest_f("%s-farfromfence-%s",
 			      feature_str(t.feature),
 			      igt_draw_get_method_name(t.method))
@@ -3603,6 +3612,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
 		    t.fbs != FBS_INDIVIDUAL)
 			continue;
 
+		igt_fixture
+			igt_require(igt_draw_supports_method(drm.fd, t.method));
+
 		for (t.format = 0; t.format < FORMAT_COUNT; t.format++) {
 			/* Skip what we already tested. */
 			if (t.format == FORMAT_DEFAULT)
@@ -3622,6 +3634,10 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
 		    t.plane != PLANE_PRI ||
 		    t.method != IGT_DRAW_BLT)
 			continue;
+
+		igt_fixture
+			igt_require(igt_draw_supports_method(drm.fd, t.method));
+
 		igt_subtest_f("%s-%s-scaledprimary",
 			      feature_str(t.feature),
 			      fbs_str(t.fbs))
@@ -3636,6 +3652,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
 		    t.method != IGT_DRAW_BLT)
 			continue;
 
+		igt_fixture
+			igt_require(igt_draw_supports_method(drm.fd, t.method));
+
 		igt_subtest_f("%s-modesetfrombusy", feature_str(t.feature))
 			modesetfrombusy_subtest(&t);
 
-- 
2.34.1

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

* [igt-dev] ✗ Fi.CI.BAT: failure for RFC Enable kms_frontbuffer_tracking on XE (rev5)
  2023-06-09 10:12 [igt-dev] [PATCH i-g-t 0/5] RFC Enable kms_frontbuffer_tracking on XE Kunal Joshi
                   ` (4 preceding siblings ...)
  2023-06-09 10:12 ` [igt-dev] [PATCH i-g-t 5/5] RFC tests/i915/kms_frontbuffer_tracking: xe only supports MMAP_WC, BLT, RENDER Kunal Joshi
@ 2023-06-09 17:39 ` Patchwork
  2023-06-12  5:44 ` [igt-dev] [PATCH i-g-t 0/5] RFC Enable kms_frontbuffer_tracking on XE Modem, Bhanuprakash
  6 siblings, 0 replies; 16+ messages in thread
From: Patchwork @ 2023-06-09 17:39 UTC (permalink / raw)
  To: Kunal Joshi; +Cc: igt-dev

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

== Series Details ==

Series: RFC Enable kms_frontbuffer_tracking on XE (rev5)
URL   : https://patchwork.freedesktop.org/series/118648/
State : failure

== Summary ==

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

Summary
-------

  **FAILURE**

  Serious unknown changes coming with IGTPW_9141 absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_9141, 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_9141/index.html

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

  No changes in participating hosts

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

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

### IGT changes ###

#### Possible regressions ####

  * igt@kms_frontbuffer_tracking@basic:
    - bat-dg2-8:          [PASS][1] -> [SKIP][2]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/bat-dg2-8/igt@kms_frontbuffer_tracking@basic.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9141/bat-dg2-8/igt@kms_frontbuffer_tracking@basic.html
    - bat-dg1-5:          [PASS][3] -> [SKIP][4]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/bat-dg1-5/igt@kms_frontbuffer_tracking@basic.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9141/bat-dg1-5/igt@kms_frontbuffer_tracking@basic.html
    - bat-dg2-11:         [PASS][5] -> [SKIP][6]
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/bat-dg2-11/igt@kms_frontbuffer_tracking@basic.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9141/bat-dg2-11/igt@kms_frontbuffer_tracking@basic.html
    - bat-dg2-9:          [PASS][7] -> [SKIP][8]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/bat-dg2-9/igt@kms_frontbuffer_tracking@basic.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9141/bat-dg2-9/igt@kms_frontbuffer_tracking@basic.html

  
#### Suppressed ####

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

  * igt@kms_frontbuffer_tracking@basic:
    - {bat-mtlp-8}:       [PASS][9] -> [SKIP][10]
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/bat-mtlp-8/igt@kms_frontbuffer_tracking@basic.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9141/bat-mtlp-8/igt@kms_frontbuffer_tracking@basic.html

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

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

### IGT changes ###

#### Issues hit ####

  * igt@i915_selftest@live@requests:
    - bat-rpls-2:         [PASS][11] -> [ABORT][12] ([i915#4983] / [i915#7913])
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/bat-rpls-2/igt@i915_selftest@live@requests.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9141/bat-rpls-2/igt@i915_selftest@live@requests.html

  * igt@i915_selftest@live@slpc:
    - bat-rpls-1:         NOTRUN -> [DMESG-WARN][13] ([i915#6367])
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9141/bat-rpls-1/igt@i915_selftest@live@slpc.html

  * igt@i915_suspend@basic-s3-without-i915:
    - bat-rpls-1:         NOTRUN -> [ABORT][14] ([i915#6687] / [i915#7978])
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9141/bat-rpls-1/igt@i915_suspend@basic-s3-without-i915.html

  * igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence:
    - bat-adlp-9:         NOTRUN -> [SKIP][15] ([i915#3546]) +2 similar issues
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9141/bat-adlp-9/igt@kms_pipe_crc_basic@nonblocking-crc-frame-sequence.html

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

  
#### Possible fixes ####

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

  * igt@i915_selftest@live@gt_mocs:
    - {bat-mtlp-6}:       [DMESG-FAIL][20] ([i915#7059]) -> [PASS][21]
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/bat-mtlp-6/igt@i915_selftest@live@gt_mocs.html
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9141/bat-mtlp-6/igt@i915_selftest@live@gt_mocs.html

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

  * igt@i915_selftest@live@slpc:
    - {bat-mtlp-6}:       [DMESG-WARN][24] ([i915#6367]) -> [PASS][25]
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_13256/bat-mtlp-6/igt@i915_selftest@live@slpc.html
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9141/bat-mtlp-6/igt@i915_selftest@live@slpc.html

  * igt@kms_pipe_crc_basic@suspend-read-crc@pipe-c-dp-1:
    - fi-cfl-8109u:       [ABORT][26] -> [PASS][27]
   [26]: 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
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9141/fi-cfl-8109u/igt@kms_pipe_crc_basic@suspend-read-crc@pipe-c-dp-1.html

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

  [i915#3546]: https://gitlab.freedesktop.org/drm/intel/issues/3546
  [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#6687]: https://gitlab.freedesktop.org/drm/intel/issues/6687
  [i915#7059]: https://gitlab.freedesktop.org/drm/intel/issues/7059
  [i915#7269]: https://gitlab.freedesktop.org/drm/intel/issues/7269
  [i915#7461]: https://gitlab.freedesktop.org/drm/intel/issues/7461
  [i915#7828]: https://gitlab.freedesktop.org/drm/intel/issues/7828
  [i915#7913]: https://gitlab.freedesktop.org/drm/intel/issues/7913
  [i915#7932]: https://gitlab.freedesktop.org/drm/intel/issues/7932
  [i915#7978]: https://gitlab.freedesktop.org/drm/intel/issues/7978
  [i915#7981]: https://gitlab.freedesktop.org/drm/intel/issues/7981
  [i915#8011]: https://gitlab.freedesktop.org/drm/intel/issues/8011
  [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_9141

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


Testlist changes
----------------

-igt@xe_gt_idle@idle-residency

== Logs ==

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

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

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

* Re: [igt-dev] [PATCH i-g-t 1/5] RFC tests/i915/kms_frontbuffer_tracking: Add xe support
  2023-06-09 10:12 ` [igt-dev] [PATCH i-g-t 1/5] RFC tests/i915/kms_frontbuffer_tracking: Add xe support Kunal Joshi
@ 2023-06-12  5:23   ` Modem, Bhanuprakash
  0 siblings, 0 replies; 16+ messages in thread
From: Modem, Bhanuprakash @ 2023-06-12  5:23 UTC (permalink / raw)
  To: Kunal Joshi, igt-dev


On Fri-09-06-2023 03:42 pm, Kunal Joshi wrote:
> Add support for DRIVER_XE
> 
> Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
> ---
>   tests/i915/kms_frontbuffer_tracking.c | 2 +-
>   1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/tests/i915/kms_frontbuffer_tracking.c b/tests/i915/kms_frontbuffer_tracking.c
> index 650e14a7..c2b99670 100644
> --- a/tests/i915/kms_frontbuffer_tracking.c
> +++ b/tests/i915/kms_frontbuffer_tracking.c
> @@ -1338,7 +1338,7 @@ static void init_crcs(enum pixel_format format, enum tiling_type tiling,
>   
>   static void setup_drm(void)
>   {
> -	drm.fd = drm_open_driver_master(DRIVER_INTEL);
> +	drm.fd = drm_open_driver_master(DRIVER_INTEL | DRIVER_XE);

LGTM
Reviewed-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>

>   	drm.debugfs = igt_debugfs_dir(drm.fd);
>   
>   	kmstest_set_vt_graphics_mode();

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

* Re: [igt-dev] [PATCH i-g-t 2/5] RFC tests/i915/kms_frontbuffer_tracking: xe doesn't support tiling as of now
  2023-06-09 10:12 ` [igt-dev] [PATCH i-g-t 2/5] RFC tests/i915/kms_frontbuffer_tracking: xe doesn't support tiling as of now Kunal Joshi
@ 2023-06-12  5:26   ` Modem, Bhanuprakash
  0 siblings, 0 replies; 16+ messages in thread
From: Modem, Bhanuprakash @ 2023-06-12  5:26 UTC (permalink / raw)
  To: Kunal Joshi, igt-dev

Hi Kunal,

On Fri-09-06-2023 03:42 pm, Kunal Joshi wrote:
> XE doesn't support tiling as of now, so set tiling to linear
> 
> v2: use is_xe_device() instead of static variable (Jouni)
>      assert if xe device and unsupported tiling method specified
>      in opt handler (Jouni)
> v3: Fix condition in igt_assert
> v4: Keep tiling check in igt_require (Bhanu)
> 
> Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
> ---
>   tests/i915/kms_frontbuffer_tracking.c | 17 +++++++++++++++++
>   1 file changed, 17 insertions(+)
> 
> diff --git a/tests/i915/kms_frontbuffer_tracking.c b/tests/i915/kms_frontbuffer_tracking.c
> index c2b99670..45a601fe 100644
> --- a/tests/i915/kms_frontbuffer_tracking.c
> +++ b/tests/i915/kms_frontbuffer_tracking.c
> @@ -1341,6 +1341,19 @@ static void setup_drm(void)
>   	drm.fd = drm_open_driver_master(DRIVER_INTEL | DRIVER_XE);
>   	drm.debugfs = igt_debugfs_dir(drm.fd);
>   
> +	/*
> +	 * Assert if xe device and tiling method specified
> +	 * in opt_handler
> +	 */
> +	igt_assert(is_i915_device(drm.fd) || (is_xe_device(drm.fd) && (opt.tiling == TILING_DEFAULT ||

I think, TILING_DEFAULT is not allowed, because (TILING_DEFAULT == TILING_X)

- Bhanu

> +		   opt.tiling == TILING_LINEAR)));
> +
> +	/*
> +	 * XE only support linear tiling
> +	 */
> +	if (is_xe_device(drm.fd))
> +		opt.tiling = TILING_LINEAR;
> +
>   	kmstest_set_vt_graphics_mode();
>   	igt_display_require(&drm.display, drm.fd);
>   
> @@ -3634,6 +3647,7 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
>   
>   			for (t.tiling = TILING_LINEAR; t.tiling < TILING_COUNT;
>   			     t.tiling++) {
> +
>   				if (t.tiling == TILING_X)
>   					continue;
>   
> @@ -3646,6 +3660,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
>   					      feature_str(t.feature),
>   					      tiling_str(t.tiling)) {
>   
> +					if (is_xe_device(drm.fd))
> +						igt_require(t.tiling == TILING_LINEAR);
> +
>   					/* Tiling Y is only supported on GEN9+ */
>   					if (t.tiling == TILING_Y) {
>   						igt_require(AT_LEAST_GEN(devid, 9));

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

* Re: [igt-dev] [PATCH i-g-t 3/5] tests/i915/kms_frontbuffer_tracking: all gem ioctls are not supported for xe as of now
  2023-06-09 10:12 ` [igt-dev] [PATCH i-g-t 3/5] tests/i915/kms_frontbuffer_tracking: all gem ioctls are not supported for xe " Kunal Joshi
@ 2023-06-12  5:37   ` Modem, Bhanuprakash
  0 siblings, 0 replies; 16+ messages in thread
From: Modem, Bhanuprakash @ 2023-06-12  5:37 UTC (permalink / raw)
  To: Kunal Joshi, igt-dev

Hi Kunal,

On Fri-09-06-2023 03:42 pm, Kunal Joshi wrote:
> XE doesn't support all gem ioctls
> Open :- Find replacement for igt_require_gem() for xe
> 
> Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
> ---
>   tests/i915/kms_frontbuffer_tracking.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/tests/i915/kms_frontbuffer_tracking.c b/tests/i915/kms_frontbuffer_tracking.c
> index 45a601fe..09bfd3c3 100644
> --- a/tests/i915/kms_frontbuffer_tracking.c
> +++ b/tests/i915/kms_frontbuffer_tracking.c
> @@ -3701,7 +3701,8 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
>   	t.flip = FLIP_PAGEFLIP;
>   	t.tiling = opt.tiling;
>   	igt_subtest("basic") {
> -		igt_require_gem(drm.fd);
> +		if (!is_xe_device(drm.fd))
> +			igt_require_gem(drm.fd);
>   		basic_subtest(&t);

Patch LGTM
Reviewed-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>

Please address below comments:
Due to the igt_fixture in Patch 5/5 of this series, "basic" test is 
getting skip [1]

Maybe you can re-arrange the tests to handle this.
Hint: subtest "basic" should be the first one in kms_frontbuffer_tracking.c

[1]: 
https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_9141/bat-dg2-8/igt@kms_frontbuffer_tracking@basic.html

- Bhanu

>   	}
>   

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

* Re: [igt-dev] [PATCH i-g-t 4/5] RFC lib/ioctl_wrappers: GEM_SET_DOMAIN ioctl not supported on xe
  2023-06-09 10:12 ` [igt-dev] [PATCH i-g-t 4/5] RFC lib/ioctl_wrappers: GEM_SET_DOMAIN ioctl not supported on xe Kunal Joshi
@ 2023-06-12  5:38   ` Modem, Bhanuprakash
  0 siblings, 0 replies; 16+ messages in thread
From: Modem, Bhanuprakash @ 2023-06-12  5:38 UTC (permalink / raw)
  To: Kunal Joshi, igt-dev


On Fri-09-06-2023 03:42 pm, Kunal Joshi wrote:
> xe doesn't support GEM_SET_DOMAIN ioctl
> 
> v2: Keep i915 specific check in test only
> 
> Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
> ---
>   tests/i915/kms_frontbuffer_tracking.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/tests/i915/kms_frontbuffer_tracking.c b/tests/i915/kms_frontbuffer_tracking.c
> index 09bfd3c3..7159cd37 100644
> --- a/tests/i915/kms_frontbuffer_tracking.c
> +++ b/tests/i915/kms_frontbuffer_tracking.c
> @@ -1573,7 +1573,8 @@ static void do_flush(const struct test_mode *t)
>   	struct modeset_params *params = pick_params(t);
>   	struct fb_region *target = pick_target(t, params);
>   
> -	gem_set_domain(drm.fd, target->fb->gem_handle, I915_GEM_DOMAIN_GTT, 0);
> +	if (is_i915_device(drm.fd))
> +		gem_set_domain(drm.fd, target->fb->gem_handle, I915_GEM_DOMAIN_GTT, 0);

Reviewed-by: Bhanuprakash Modem <bhanuprakash.modem@intel.com>

>   }
>   
>   #define DONT_ASSERT_CRC			(1 << 0)

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

* Re: [igt-dev] [PATCH i-g-t 5/5] RFC tests/i915/kms_frontbuffer_tracking: xe only supports MMAP_WC, BLT, RENDER
  2023-06-09 10:12 ` [igt-dev] [PATCH i-g-t 5/5] RFC tests/i915/kms_frontbuffer_tracking: xe only supports MMAP_WC, BLT, RENDER Kunal Joshi
@ 2023-06-12  5:40   ` Modem, Bhanuprakash
  0 siblings, 0 replies; 16+ messages in thread
From: Modem, Bhanuprakash @ 2023-06-12  5:40 UTC (permalink / raw)
  To: Kunal Joshi, igt-dev

Hi Kunal,

Please check the comments in Patch 3/5 in this series.
Otherwise this patch LGTM.

- Bhanu

On Fri-09-06-2023 03:42 pm, Kunal Joshi wrote:
> xe only supports MMAP_WC, BLT and RENDER methods,
> 
> Open :- does draw method give guarantee for fb to be rendered
> on return, if not how to assure, ex for RENDER we have intel_bb_sync
> 
> v2: use igt_draw_supports_method (Bhanu)
>      Remove check from macro and put it in igt_require at test level
>      (Bhanu)
> 
> Signed-off-by: Kunal Joshi <kunal1.joshi@intel.com>
> ---
>   tests/i915/kms_frontbuffer_tracking.c | 59 ++++++++++++++++++---------
>   1 file changed, 39 insertions(+), 20 deletions(-)
> 
> diff --git a/tests/i915/kms_frontbuffer_tracking.c b/tests/i915/kms_frontbuffer_tracking.c
> index 7159cd37..b8dd5cd5 100644
> --- a/tests/i915/kms_frontbuffer_tracking.c
> +++ b/tests/i915/kms_frontbuffer_tracking.c
> @@ -1307,11 +1307,13 @@ static void init_crcs(enum pixel_format format, enum tiling_type tiling,
>   		for (r = 0; r < pattern->n_rects; r++)
>   			for (r_ = 0; r_ <= r; r_++)
>   				draw_rect_igt_fb(pattern, &tmp_fbs[r],
> -						 IGT_DRAW_PWRITE, r_);
> +						 igt_draw_supports_method(drm.fd, IGT_DRAW_PWRITE) ?
> +						 IGT_DRAW_PWRITE : IGT_DRAW_RENDER,
> +						 r_);
>   	} else {
>   		for (r = 0; r < pattern->n_rects; r++)
> -			draw_rect_igt_fb(pattern, &tmp_fbs[r], IGT_DRAW_PWRITE,
> -					 r);
> +			draw_rect_igt_fb(pattern, &tmp_fbs[r], igt_draw_supports_method(drm.fd, IGT_DRAW_PWRITE) ?
> +					 IGT_DRAW_PWRITE : IGT_DRAW_RENDER, r);
>   	}
>   
>   	igt_output_set_pipe(prim_mode_params.output, prim_mode_params.pipe);
> @@ -2048,9 +2050,6 @@ static void draw_subtest(const struct test_mode *t)
>   	struct modeset_params *params = pick_params(t);
>   	struct fb_region *target;
>   
> -	igt_skip_on(t->method == IGT_DRAW_MMAP_GTT &&
> -		    !gem_has_mappable_ggtt(drm.fd));
> -
>   	switch (t->screen) {
>   	case SCREEN_PRIM:
>   		if (t->method != IGT_DRAW_MMAP_GTT && t->plane == PLANE_PRI)
> @@ -2150,9 +2149,8 @@ static void multidraw_subtest(const struct test_mode *t)
>   				  igt_draw_get_method_name(m1),
>   				  igt_draw_get_method_name(m2));
>   
> -			if ((m1 == IGT_DRAW_MMAP_GTT ||
> -			     m2 == IGT_DRAW_MMAP_GTT) &&
> -			    !gem_has_mappable_ggtt(drm.fd))
> +			if (!igt_draw_supports_method(drm.fd, m1) ||
> +			    !igt_draw_supports_method(drm.fd, m2))
>   				continue;
>   
>   			for (r = 0; r < pattern->n_rects; r++) {
> @@ -2421,9 +2419,6 @@ static void flip_subtest(const struct test_mode *t)
>   	struct draw_pattern_info *pattern = &pattern1;
>   	enum color bg_color;
>   
> -	igt_skip_on(t->method == IGT_DRAW_MMAP_GTT &&
> -		    !gem_has_mappable_ggtt(drm.fd));
> -
>   	switch (t->screen) {
>   	case SCREEN_PRIM:
>   		assertions |= ASSERT_LAST_ACTION_CHANGED;
> @@ -2483,9 +2478,6 @@ static void fliptrack_subtest(const struct test_mode *t, enum flip_type type)
>   	struct modeset_params *params = pick_params(t);
>   	struct draw_pattern_info *pattern = &pattern1;
>   
> -	igt_skip_on(t->method == IGT_DRAW_MMAP_GTT &&
> -		    !gem_has_mappable_ggtt(drm.fd));
> -
>   	prepare_subtest(t, pattern);
>   
>   	create_fb(t->format, params->primary.fb->width, params->primary.fb->height,
> @@ -2895,9 +2887,6 @@ static void farfromfence_subtest(const struct test_mode *t)
>   	int max_height, assertions = 0;
>   	int gen = intel_display_ver(intel_get_drm_devid(drm.fd));
>   
> -	igt_skip_on(t->method == IGT_DRAW_MMAP_GTT &&
> -		    !gem_has_mappable_ggtt(drm.fd));
> -
>   	switch (gen) {
>   	case 2:
>   		max_height = 2048;
> @@ -3181,8 +3170,7 @@ static void basic_subtest(const struct test_mode *t)
>   	fb1 = params->primary.fb;
>   
>   	for (r = 0, method = 0; method < IGT_DRAW_METHOD_COUNT; method++) {
> -		if (method == IGT_DRAW_MMAP_GTT &&
> -		    !gem_has_mappable_ggtt(drm.fd))
> +		if (!igt_draw_supports_method(drm.fd, method))
>   			continue;
>   
>   		if (r == pattern->n_rects) {
> @@ -3487,6 +3475,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
>   	}
>   
>   	TEST_MODE_ITER_BEGIN(t)
> +		igt_fixture
> +			igt_require(igt_draw_supports_method(drm.fd, t.method));
> +
>   		igt_subtest_f("%s-%s-%s-%s-%s-draw-%s",
>   			      feature_str(t.feature),
>   			      pipes_str(t.pipes),
> @@ -3503,6 +3494,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
>   		    (!opt.show_hidden && t.method != IGT_DRAW_BLT))
>   			continue;
>   
> +		igt_fixture
> +			igt_require(igt_draw_supports_method(drm.fd, t.method));
> +
>   		for (t.flip = 0; t.flip < FLIP_COUNT; t.flip++)
>   			igt_subtest_f("%s-%s-%s-%s-%sflip-%s",
>   				      feature_str(t.feature),
> @@ -3521,6 +3515,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
>   		    (t.feature & FEATURE_FBC) == 0)
>   			continue;
>   
> +		igt_fixture
> +			igt_require(igt_draw_supports_method(drm.fd, t.method));
> +
>   		igt_subtest_f("%s-%s-%s-fliptrack-%s",
>   			      feature_str(t.feature),
>   			      pipes_str(t.pipes),
> @@ -3535,6 +3532,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
>   		    t.plane == PLANE_PRI)
>   			continue;
>   
> +		igt_fixture
> +			igt_require(igt_draw_supports_method(drm.fd, t.method));
> +
>   		igt_subtest_f("%s-%s-%s-%s-%s-move",
>   			      feature_str(t.feature),
>   			      pipes_str(t.pipes),
> @@ -3558,6 +3558,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
>   		    t.plane != PLANE_SPR)
>   			continue;
>   
> +		igt_fixture
> +			igt_require(igt_draw_supports_method(drm.fd, t.method));
> +
>   		igt_subtest_f("%s-%s-%s-%s-%s-fullscreen",
>   			      feature_str(t.feature),
>   			      pipes_str(t.pipes),
> @@ -3574,6 +3577,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
>   		    (!opt.show_hidden && t.fbs != FBS_INDIVIDUAL))
>   			continue;
>   
> +		igt_fixture
> +			igt_require(igt_draw_supports_method(drm.fd, t.method));
> +
>   		igt_subtest_f("%s-%s-%s-%s-multidraw",
>   			      feature_str(t.feature),
>   			      pipes_str(t.pipes),
> @@ -3590,6 +3596,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
>   		    t.method != IGT_DRAW_MMAP_GTT)
>   			continue;
>   
> +		igt_fixture
> +			igt_require(igt_draw_supports_method(drm.fd, t.method));
> +
>   		igt_subtest_f("%s-farfromfence-%s",
>   			      feature_str(t.feature),
>   			      igt_draw_get_method_name(t.method))
> @@ -3603,6 +3612,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
>   		    t.fbs != FBS_INDIVIDUAL)
>   			continue;
>   
> +		igt_fixture
> +			igt_require(igt_draw_supports_method(drm.fd, t.method));
> +
>   		for (t.format = 0; t.format < FORMAT_COUNT; t.format++) {
>   			/* Skip what we already tested. */
>   			if (t.format == FORMAT_DEFAULT)
> @@ -3622,6 +3634,10 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
>   		    t.plane != PLANE_PRI ||
>   		    t.method != IGT_DRAW_BLT)
>   			continue;
> +
> +		igt_fixture
> +			igt_require(igt_draw_supports_method(drm.fd, t.method));
> +
>   		igt_subtest_f("%s-%s-scaledprimary",
>   			      feature_str(t.feature),
>   			      fbs_str(t.fbs))
> @@ -3636,6 +3652,9 @@ igt_main_args("", long_options, help_str, opt_handler, NULL)
>   		    t.method != IGT_DRAW_BLT)
>   			continue;
>   
> +		igt_fixture
> +			igt_require(igt_draw_supports_method(drm.fd, t.method));
> +
>   		igt_subtest_f("%s-modesetfrombusy", feature_str(t.feature))
>   			modesetfrombusy_subtest(&t);
>   

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

* Re: [igt-dev] [PATCH i-g-t 0/5] RFC Enable kms_frontbuffer_tracking on XE
  2023-06-09 10:12 [igt-dev] [PATCH i-g-t 0/5] RFC Enable kms_frontbuffer_tracking on XE Kunal Joshi
                   ` (5 preceding siblings ...)
  2023-06-09 17:39 ` [igt-dev] ✗ Fi.CI.BAT: failure for RFC Enable kms_frontbuffer_tracking on XE (rev5) Patchwork
@ 2023-06-12  5:44 ` Modem, Bhanuprakash
  2023-06-12  5:52   ` Joshi, Kunal1
  6 siblings, 1 reply; 16+ messages in thread
From: Modem, Bhanuprakash @ 2023-06-12  5:44 UTC (permalink / raw)
  To: Kunal Joshi, igt-dev

Hi Kunal,

Apart from the minor comments, this series looks good to me.
As pre-merge IGT testing is not enabled for XE, please try to have one 
round of local execution. Also, make sure it not breaking the i915 testing.

- Bhanu

On Fri-09-06-2023 03:42 pm, Kunal Joshi wrote:
> This series is intended to extend kms_frontbuffer_tracking
> test to be supported on xe driver
> 
> Kunal Joshi (5):
>    RFC tests/i915/kms_frontbuffer_tracking: Add xe support
>    RFC tests/i915/kms_frontbuffer_tracking: xe doesn't support tiling as
>      of now
>    tests/i915/kms_frontbuffer_tracking: all gem ioctls are not supported
>      for xe as of now
>    RFC lib/ioctl_wrappers: GEM_SET_DOMAIN ioctl not supported on xe
>    RFC tests/i915/kms_frontbuffer_tracking: xe only supports MMAP_WC,
>      BLT, RENDER
> 
>   tests/i915/kms_frontbuffer_tracking.c | 84 +++++++++++++++++++--------
>   1 file changed, 61 insertions(+), 23 deletions(-)
> 

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

* Re: [igt-dev] [PATCH i-g-t 0/5] RFC Enable kms_frontbuffer_tracking on XE
  2023-06-12  5:44 ` [igt-dev] [PATCH i-g-t 0/5] RFC Enable kms_frontbuffer_tracking on XE Modem, Bhanuprakash
@ 2023-06-12  5:52   ` Joshi, Kunal1
  0 siblings, 0 replies; 16+ messages in thread
From: Joshi, Kunal1 @ 2023-06-12  5:52 UTC (permalink / raw)
  To: Modem, Bhanuprakash, igt-dev, Hogander, Jouni


On 6/12/2023 11:14 AM, Modem, Bhanuprakash wrote:
> Hi Kunal,
>
> Apart from the minor comments, this series looks good to me.
> As pre-merge IGT testing is not enabled for XE, please try to have one 
> round of local execution. Also, make sure it not breaking the i915 
> testing.
>
> - Bhanu
>
> On Fri-09-06-2023 03:42 pm, Kunal Joshi wrote:
>> This series is intended to extend kms_frontbuffer_tracking
>> test to be supported on xe driver
>>
>> Kunal Joshi (5):
>>    RFC tests/i915/kms_frontbuffer_tracking: Add xe support
>>    RFC tests/i915/kms_frontbuffer_tracking: xe doesn't support tiling as
>>      of now
>>    tests/i915/kms_frontbuffer_tracking: all gem ioctls are not supported
>>      for xe as of now
>>    RFC lib/ioctl_wrappers: GEM_SET_DOMAIN ioctl not supported on xe
>>    RFC tests/i915/kms_frontbuffer_tracking: xe only supports MMAP_WC,
>>      BLT, RENDER
>>
>>   tests/i915/kms_frontbuffer_tracking.c | 84 +++++++++++++++++++--------
>>   1 file changed, 61 insertions(+), 23 deletions(-)
>>

Thanks Bhanu, Jouni for the reviews, will float the required changes in 
next revision,
Also will provide local execution result for each combination and check 
on i915 nothing is breaking.

Regards
Kunal Joshi


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

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

Thread overview: 16+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2023-06-09 10:12 [igt-dev] [PATCH i-g-t 0/5] RFC Enable kms_frontbuffer_tracking on XE Kunal Joshi
2023-06-09 10:12 ` [igt-dev] [PATCH i-g-t 1/5] RFC tests/i915/kms_frontbuffer_tracking: Add xe support Kunal Joshi
2023-06-12  5:23   ` Modem, Bhanuprakash
2023-06-09 10:12 ` [igt-dev] [PATCH i-g-t 2/5] RFC tests/i915/kms_frontbuffer_tracking: xe doesn't support tiling as of now Kunal Joshi
2023-06-12  5:26   ` Modem, Bhanuprakash
2023-06-09 10:12 ` [igt-dev] [PATCH i-g-t 3/5] tests/i915/kms_frontbuffer_tracking: all gem ioctls are not supported for xe " Kunal Joshi
2023-06-12  5:37   ` Modem, Bhanuprakash
2023-06-09 10:12 ` [igt-dev] [PATCH i-g-t 4/5] RFC lib/ioctl_wrappers: GEM_SET_DOMAIN ioctl not supported on xe Kunal Joshi
2023-06-12  5:38   ` Modem, Bhanuprakash
2023-06-09 10:12 ` [igt-dev] [PATCH i-g-t 5/5] RFC tests/i915/kms_frontbuffer_tracking: xe only supports MMAP_WC, BLT, RENDER Kunal Joshi
2023-06-12  5:40   ` Modem, Bhanuprakash
2023-06-09 17:39 ` [igt-dev] ✗ Fi.CI.BAT: failure for RFC Enable kms_frontbuffer_tracking on XE (rev5) Patchwork
2023-06-12  5:44 ` [igt-dev] [PATCH i-g-t 0/5] RFC Enable kms_frontbuffer_tracking on XE Modem, Bhanuprakash
2023-06-12  5:52   ` Joshi, Kunal1
  -- strict thread matches above, loose matches on Subject: below --
2023-06-06  8:02 Kunal Joshi
2023-06-06  8:02 ` [igt-dev] [PATCH i-g-t 3/5] tests/i915/kms_frontbuffer_tracking: all gem ioctls are not supported for xe as of now Kunal Joshi
2023-06-01 11:48 [igt-dev] [PATCH i-g-t 0/5] RFC Enable kms_frontbuffer_tracking on XE Kunal Joshi
2023-06-01 11:48 ` [igt-dev] [PATCH i-g-t 3/5] tests/i915/kms_frontbuffer_tracking: all gem ioctls are not supported for xe as of now Kunal Joshi

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