All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t] test longer than 32k strides.
@ 2019-09-23 10:40 Juha-Pekka Heikkila
  2019-09-23 10:40 ` [igt-dev] [PATCH i-g-t] tests/kms_big_fb: Add over 32k HW stride tests Juha-Pekka Heikkila
                   ` (7 more replies)
  0 siblings, 8 replies; 15+ messages in thread
From: Juha-Pekka Heikkila @ 2019-09-23 10:40 UTC (permalink / raw)
  To: igt-dev

This test goes along with this kernel patch:
https://patchwork.freedesktop.org/series/67077/

Juha-Pekka Heikkila (1):
  tests/kms_big_fb: Add over 32k HW stride tests

 tests/kms_big_fb.c | 103 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 103 insertions(+)

-- 
2.7.4

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t] tests/kms_big_fb: Add over 32k HW stride tests
  2019-09-23 10:40 [igt-dev] [PATCH i-g-t] test longer than 32k strides Juha-Pekka Heikkila
@ 2019-09-23 10:40 ` Juha-Pekka Heikkila
  2019-09-23 12:43   ` Ville Syrjälä
       [not found]   ` <1571904804-2248-1-git-send-email-juhapekka.heikkila@gmail.com>
  2019-09-23 11:41 ` [igt-dev] ✗ GitLab.Pipeline: warning for tests/kms_big_fb: Add over 32k HW stride tests Patchwork
                   ` (6 subsequent siblings)
  7 siblings, 2 replies; 15+ messages in thread
From: Juha-Pekka Heikkila @ 2019-09-23 10:40 UTC (permalink / raw)
  To: igt-dev

On ICL when using 64bpp formats strides can reach up to
64k. These test try exact maximum HW strides so gtt
remapping will not come in play.

Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
---
 tests/kms_big_fb.c | 103 +++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 103 insertions(+)

diff --git a/tests/kms_big_fb.c b/tests/kms_big_fb.c
index c3498c6..aee4129 100644
--- a/tests/kms_big_fb.c
+++ b/tests/kms_big_fb.c
@@ -568,6 +568,91 @@ test_addfb(data_t *data)
 	gem_close(data->drm_fd, bo);
 }
 
+static void test_stride_size_crc(data_t *data, uint32_t format, uint64_t modifier)
+{
+	drmModeModeInfo *mode;
+	igt_crc_t crc, comparison_crc;
+	igt_output_t *output;
+	struct igt_fb fb, comparison_fb;
+	igt_plane_t *plane;
+	cairo_surface_t *surf;
+	cairo_t *cr;
+	enum pipe pipe = 0;
+	uint32_t maxsize;
+
+	/*
+	 * linear mapping doesn't work all the way to 64k. See
+	 * skl_plane_max_stride() in drm/i915/display/intel_srite.c
+	 * in kernel tree.
+	 */
+	if (modifier == DRM_FORMAT_MOD_LINEAR)
+		maxsize = (65536-64)/8;
+	else
+		maxsize = 65536/8;
+
+	igt_require(igt_display_has_format_mod(&data->display, format, modifier));
+
+	for_each_connected_output(&data->display, output) {
+		igt_output_set_pipe(output, pipe);
+		mode = igt_output_get_mode(output);
+		igt_display_commit2(&data->display, COMMIT_ATOMIC);
+
+		data->pipe_crc = igt_pipe_crc_new(data->drm_fd, data->pipe, INTEL_PIPE_CRC_SOURCE_AUTO);
+		igt_pipe_crc_start(data->pipe_crc);
+
+		igt_create_pattern_fb(data->drm_fd, maxsize, mode->vdisplay,
+				format, modifier, &fb);
+
+		/*
+		 * First get crc by moving plane so that right edge of plane is
+		 * at right edge of display
+		 */
+		plane = igt_output_get_plane_type(output, DRM_PLANE_TYPE_PRIMARY);
+		igt_plane_set_fb(plane, &fb);
+		igt_plane_set_position(plane, -(maxsize - mode->hdisplay), 0);
+		igt_fb_set_position(&fb, plane, 0, 0);
+		igt_display_commit2(&data->display, COMMIT_ATOMIC);
+		igt_pipe_crc_get_current(data->display.drm_fd, data->pipe_crc, &crc);
+
+		/*
+		 * Now get crc by moving plane to (0,0), set its size to match
+		 * output and copy comparison fb so that right edge of fb is at right
+		 * edge of output. This way comparison crc can be calculated with
+		 * screen size fb. ..because of this juggling this probably work
+		 * only for rgb modes fbs.
+		 */
+		surf = igt_get_cairo_surface(fb.fd, &fb);
+		igt_assert(igt_create_fb_with_bo_size(fb.fd, mode->hdisplay,
+						mode->vdisplay, fb.drm_format,
+						modifier,
+						IGT_COLOR_YCBCR_BT709,
+						IGT_COLOR_YCBCR_LIMITED_RANGE,
+						&comparison_fb, 0, 0) > 0);
+
+		cr = igt_get_cairo_ctx(comparison_fb.fd, &comparison_fb);
+		cairo_set_source_surface(cr, surf, (int)-(maxsize - mode->hdisplay), 0);
+		cairo_paint(cr);
+		igt_put_cairo_ctx(comparison_fb.fd, &comparison_fb, cr);
+
+		cairo_surface_destroy(surf);
+
+		igt_plane_set_fb(plane, &comparison_fb);
+		igt_plane_set_position(plane, 0, 0);
+		igt_plane_set_size(plane, mode->hdisplay, mode->vdisplay);
+		igt_fb_set_position(&fb, plane, 0, 0);
+		igt_display_commit2(&data->display, COMMIT_ATOMIC);
+		igt_pipe_crc_get_current(data->display.drm_fd, data->pipe_crc, &comparison_crc);
+
+		igt_plane_set_fb(plane, NULL);
+		igt_remove_fb(data->drm_fd, &fb);
+		igt_remove_fb(data->drm_fd, &comparison_fb);
+		igt_pipe_crc_free(data->pipe_crc);
+		igt_output_set_pipe(output, PIPE_ANY);
+
+		igt_assert_crc_equal(&crc, &comparison_crc);
+	}
+}
+
 static data_t data;
 
 static const struct {
@@ -590,6 +675,10 @@ static const struct {
 	{ DRM_FORMAT_XBGR16161616F, 64, },
 };
 
+static const int formats_long_hw_stride[] = {
+	DRM_FORMAT_XBGR16161616F,
+};
+
 static const struct {
 	igt_rotation_t rotation;
 	uint16_t angle;
@@ -704,6 +793,20 @@ igt_main
 		}
 	}
 
+	for (int i = 0; i < ARRAY_SIZE(modifiers); i++) {
+		data.modifier = modifiers[i].modifier;
+
+		igt_subtest_f("%s-over-32k-hw-stride-crc", modifiers[i].name) {
+			igt_require(intel_gen(data.devid) >= 11);
+			igt_require(igt_fb_supported_format(data.format));
+			for (int j = 0; j < ARRAY_SIZE(formats_long_hw_stride); j++) {
+				data.format = formats_long_hw_stride[j];
+
+				test_stride_size_crc(&data, data.format, data.modifier);
+			}
+		}
+	}
+
 	igt_fixture {
 		igt_display_fini(&data.display);
 
-- 
2.7.4

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] ✗ GitLab.Pipeline: warning for tests/kms_big_fb: Add over 32k HW stride tests
  2019-09-23 10:40 [igt-dev] [PATCH i-g-t] test longer than 32k strides Juha-Pekka Heikkila
  2019-09-23 10:40 ` [igt-dev] [PATCH i-g-t] tests/kms_big_fb: Add over 32k HW stride tests Juha-Pekka Heikkila
@ 2019-09-23 11:41 ` Patchwork
  2019-09-23 11:45 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2019-09-23 11:41 UTC (permalink / raw)
  To: Juha-Pekka Heikkila; +Cc: igt-dev

== Series Details ==

Series: tests/kms_big_fb: Add over 32k HW stride tests
URL   : https://patchwork.freedesktop.org/series/67079/
State : warning

== Summary ==

ERROR! This series introduces new undocumented tests:

kms_big_fb@linear-over-32k-hw-stride-crc
kms_big_fb@x-tiled-over-32k-hw-stride-crc
kms_big_fb@y-tiled-over-32k-hw-stride-crc
kms_big_fb@yf-tiled-over-32k-hw-stride-crc

Can you document them as per the requirement in the [CONTRIBUTING.md]?

[Documentation] has more details on how to do this.

Here are few examples:
https://gitlab.freedesktop.org/drm/igt-gpu-tools/commit/0316695d03aa46108296b27f3982ec93200c7a6e
https://gitlab.freedesktop.org/drm/igt-gpu-tools/commit/443cc658e1e6b492ee17bf4f4d891029eb7a205d

Thanks in advance!

[CONTRIBUTING.md]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/blob/master/CONTRIBUTING.md#L19
[Documentation]: https://drm.pages.freedesktop.org/igt-gpu-tools/igt-gpu-tools-Core.html#igt-describe

Other than that, pipeline status: SUCCESS.

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

== Logs ==

For more details see: https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/pipelines/65533
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] ✓ Fi.CI.BAT: success for tests/kms_big_fb: Add over 32k HW stride tests
  2019-09-23 10:40 [igt-dev] [PATCH i-g-t] test longer than 32k strides Juha-Pekka Heikkila
  2019-09-23 10:40 ` [igt-dev] [PATCH i-g-t] tests/kms_big_fb: Add over 32k HW stride tests Juha-Pekka Heikkila
  2019-09-23 11:41 ` [igt-dev] ✗ GitLab.Pipeline: warning for tests/kms_big_fb: Add over 32k HW stride tests Patchwork
@ 2019-09-23 11:45 ` Patchwork
  2019-09-23 13:01 ` [igt-dev] ✗ GitLab.Pipeline: warning for tests/kms_big_fb: Add over 32k HW stride tests (rev2) Patchwork
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2019-09-23 11:45 UTC (permalink / raw)
  To: Juha-Pekka Heikkila; +Cc: igt-dev

== Series Details ==

Series: tests/kms_big_fb: Add over 32k HW stride tests
URL   : https://patchwork.freedesktop.org/series/67079/
State : success

== Summary ==

CI Bug Log - changes from IGT_5197 -> IGTPW_3487
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

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

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_close_race@basic-process:
    - fi-icl-u3:          [PASS][1] -> [DMESG-WARN][2] ([fdo#107724]) +1 similar issue
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/fi-icl-u3/igt@gem_close_race@basic-process.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/fi-icl-u3/igt@gem_close_race@basic-process.html

  
#### Possible fixes ####

  * igt@gem_ctx_param@basic:
    - fi-icl-u3:          [DMESG-WARN][3] ([fdo#107724]) -> [PASS][4] +1 similar issue
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/fi-icl-u3/igt@gem_ctx_param@basic.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/fi-icl-u3/igt@gem_ctx_param@basic.html

  * igt@kms_chamelium@hdmi-crc-fast:
    - fi-icl-u2:          [FAIL][5] ([fdo#109635 ]) -> [PASS][6]
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/fi-icl-u2/igt@kms_chamelium@hdmi-crc-fast.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/fi-icl-u2/igt@kms_chamelium@hdmi-crc-fast.html

  * igt@kms_chamelium@hdmi-hpd-fast:
    - fi-kbl-7500u:       [FAIL][7] ([fdo#111407]) -> [PASS][8]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/fi-kbl-7500u/igt@kms_chamelium@hdmi-hpd-fast.html

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

  [fdo#107724]: https://bugs.freedesktop.org/show_bug.cgi?id=107724
  [fdo#109635 ]: https://bugs.freedesktop.org/show_bug.cgi?id=109635 
  [fdo#111407]: https://bugs.freedesktop.org/show_bug.cgi?id=111407
  [fdo#111600]: https://bugs.freedesktop.org/show_bug.cgi?id=111600
  [fdo#111699]: https://bugs.freedesktop.org/show_bug.cgi?id=111699


Participating hosts (54 -> 48)
------------------------------

  Additional (1): fi-icl-dsi 
  Missing    (7): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-icl-y fi-byt-clapper fi-bdw-samus 


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

  * CI: CI-20190529 -> None
  * IGT: IGT_5197 -> IGTPW_3487

  CI-20190529: 20190529
  CI_DRM_6939: f839fe27dcaf8e4e0716c0b83a9481df3a1de27e @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_3487: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/
  IGT_5197: aa534ff47fd2f455c8be9e59eae807695b87fcdd @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools



== Testlist changes ==

+igt@kms_big_fb@linear-over-32k-hw-stride-crc
+igt@kms_big_fb@x-tiled-over-32k-hw-stride-crc
+igt@kms_big_fb@yf-tiled-over-32k-hw-stride-crc
+igt@kms_big_fb@y-tiled-over-32k-hw-stride-crc

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t] tests/kms_big_fb: Add over 32k HW stride tests
  2019-09-23 10:40 ` [igt-dev] [PATCH i-g-t] tests/kms_big_fb: Add over 32k HW stride tests Juha-Pekka Heikkila
@ 2019-09-23 12:43   ` Ville Syrjälä
  2019-09-27 13:43     ` Juha-Pekka Heikkila
       [not found]   ` <1571904804-2248-1-git-send-email-juhapekka.heikkila@gmail.com>
  1 sibling, 1 reply; 15+ messages in thread
From: Ville Syrjälä @ 2019-09-23 12:43 UTC (permalink / raw)
  To: Juha-Pekka Heikkila; +Cc: igt-dev

On Mon, Sep 23, 2019 at 01:40:33PM +0300, Juha-Pekka Heikkila wrote:
> On ICL when using 64bpp formats strides can reach up to
> 64k. These test try exact maximum HW strides so gtt
> remapping will not come in play.
> 
> Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
> ---
>  tests/kms_big_fb.c | 103 +++++++++++++++++++++++++++++++++++++++++++++++++++++
>  1 file changed, 103 insertions(+)

I believe all you should need is something like:

--- a/tests/kms_big_fb.c
+++ b/tests/kms_big_fb.c
@@ -161,9 +161,6 @@ static void max_fb_size(data_t *data, int *width, int *height,
 	uint64_t size;
 	int i = 0;
 
-	*width = data->max_fb_width;
-	*height = data->max_fb_height;
-
 	/* max fence stride is only 8k bytes on gen3 */
 	if (intel_gen(data->devid) < 4 &&
 	    format == DRM_FORMAT_XRGB8888)
@@ -415,8 +412,16 @@ static bool test_pipe(data_t *data)
 	return ret;
 }
 
-static void test_scanout(data_t *data)
+static void test_scanout(data_t *data, bool test_max_hw_stride)
 {
+	if (test_max_hw_stride) {
+		data->big_fb_width = BIG;
+		data->big_fb_height = BIG;
+	} else {
+		data->big_fb_width = data->max_fb_width;
+		data->big_fb_height = data->max_fb_height;
+	}
+
 	max_fb_size(data, &data->big_fb_width, &data->big_fb_height,
 		    data->format, data->modifier);
 
-- 
Ville Syrjälä
Intel
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] ✗ GitLab.Pipeline: warning for tests/kms_big_fb: Add over 32k HW stride tests (rev2)
  2019-09-23 10:40 [igt-dev] [PATCH i-g-t] test longer than 32k strides Juha-Pekka Heikkila
                   ` (2 preceding siblings ...)
  2019-09-23 11:45 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
@ 2019-09-23 13:01 ` Patchwork
  2019-09-23 17:18 ` [igt-dev] ✓ Fi.CI.IGT: success for tests/kms_big_fb: Add over 32k HW stride tests Patchwork
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2019-09-23 13:01 UTC (permalink / raw)
  To: Ville Syrjälä; +Cc: igt-dev

== Series Details ==

Series: tests/kms_big_fb: Add over 32k HW stride tests (rev2)
URL   : https://patchwork.freedesktop.org/series/67079/
State : warning

== Summary ==

Did not get list of undocumented tests for this run, something is wrong!

Other than that, pipeline status: FAILED.

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

== Logs ==

For more details see: https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/pipelines/65569
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] ✓ Fi.CI.IGT: success for tests/kms_big_fb: Add over 32k HW stride tests
  2019-09-23 10:40 [igt-dev] [PATCH i-g-t] test longer than 32k strides Juha-Pekka Heikkila
                   ` (3 preceding siblings ...)
  2019-09-23 13:01 ` [igt-dev] ✗ GitLab.Pipeline: warning for tests/kms_big_fb: Add over 32k HW stride tests (rev2) Patchwork
@ 2019-09-23 17:18 ` Patchwork
  2019-10-24  9:19 ` [igt-dev] ✗ GitLab.Pipeline: warning for tests/kms_big_fb: Add over 32k HW stride tests (rev3) Patchwork
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2019-09-23 17:18 UTC (permalink / raw)
  To: Ville Syrjälä; +Cc: igt-dev

== Series Details ==

Series: tests/kms_big_fb: Add over 32k HW stride tests
URL   : https://patchwork.freedesktop.org/series/67079/
State : success

== Summary ==

CI Bug Log - changes from IGT_5197_full -> IGTPW_3487_full
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

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

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

### IGT changes ###

#### Possible regressions ####

  * {igt@kms_big_fb@linear-over-32k-hw-stride-crc} (NEW):
    - shard-iclb:         NOTRUN -> [FAIL][1]
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-iclb5/igt@kms_big_fb@linear-over-32k-hw-stride-crc.html

  * {igt@kms_big_fb@y-tiled-over-32k-hw-stride-crc} (NEW):
    - shard-iclb:         NOTRUN -> [DMESG-WARN][2]
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-iclb7/igt@kms_big_fb@y-tiled-over-32k-hw-stride-crc.html

  * {igt@kms_big_fb@yf-tiled-over-32k-hw-stride-crc} (NEW):
    - shard-iclb:         NOTRUN -> [SKIP][3]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-iclb7/igt@kms_big_fb@yf-tiled-over-32k-hw-stride-crc.html

  
New tests
---------

  New tests have been introduced between IGT_5197_full and IGTPW_3487_full:

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

  * igt@kms_big_fb@linear-over-32k-hw-stride-crc:
    - Statuses : 1 fail(s) 5 skip(s)
    - Exec time: [0.0, 0.19] s

  * igt@kms_big_fb@x-tiled-over-32k-hw-stride-crc:
    - Statuses : 1 pass(s) 5 skip(s)
    - Exec time: [0.0, 2.34] s

  * igt@kms_big_fb@y-tiled-over-32k-hw-stride-crc:
    - Statuses : 1 dmesg-warn(s) 5 skip(s)
    - Exec time: [0.0, 4.49] s

  * igt@kms_big_fb@yf-tiled-over-32k-hw-stride-crc:
    - Statuses : 6 skip(s)
    - Exec time: [0.0] s

  

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

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_ctx_shared@q-in-order-bsd2:
    - shard-iclb:         [PASS][4] -> [SKIP][5] ([fdo#109276]) +13 similar issues
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-iclb1/igt@gem_ctx_shared@q-in-order-bsd2.html
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-iclb6/igt@gem_ctx_shared@q-in-order-bsd2.html

  * igt@gem_exec_balancer@smoke:
    - shard-iclb:         [PASS][6] -> [SKIP][7] ([fdo#110854])
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-iclb4/igt@gem_exec_balancer@smoke.html
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-iclb8/igt@gem_exec_balancer@smoke.html

  * igt@gem_exec_schedule@deep-bsd:
    - shard-iclb:         [PASS][8] -> [SKIP][9] ([fdo#111325]) +6 similar issues
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-iclb6/igt@gem_exec_schedule@deep-bsd.html
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-iclb4/igt@gem_exec_schedule@deep-bsd.html

  * igt@i915_suspend@debugfs-reader:
    - shard-apl:          [PASS][10] -> [DMESG-WARN][11] ([fdo#108566]) +5 similar issues
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-apl3/igt@i915_suspend@debugfs-reader.html
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-apl1/igt@i915_suspend@debugfs-reader.html

  * igt@kms_cursor_crc@pipe-b-cursor-suspend:
    - shard-kbl:          [PASS][12] -> [FAIL][13] ([fdo#103232])
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-kbl1/igt@kms_cursor_crc@pipe-b-cursor-suspend.html
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-kbl7/igt@kms_cursor_crc@pipe-b-cursor-suspend.html
    - shard-apl:          [PASS][14] -> [FAIL][15] ([fdo#103232])
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-apl3/igt@kms_cursor_crc@pipe-b-cursor-suspend.html
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-apl7/igt@kms_cursor_crc@pipe-b-cursor-suspend.html

  * igt@kms_cursor_crc@pipe-c-cursor-suspend:
    - shard-kbl:          [PASS][16] -> [DMESG-WARN][17] ([fdo#108566])
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-kbl3/igt@kms_cursor_crc@pipe-c-cursor-suspend.html
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-kbl4/igt@kms_cursor_crc@pipe-c-cursor-suspend.html

  * igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic:
    - shard-hsw:          [PASS][18] -> [FAIL][19] ([fdo#105767])
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-hsw5/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic.html
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-hsw6/igt@kms_cursor_legacy@2x-long-cursor-vs-flip-atomic.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-blt:
    - shard-iclb:         [PASS][20] -> [FAIL][21] ([fdo#103167]) +4 similar issues
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-iclb2/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-blt.html
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-iclb2/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-pri-indfb-draw-blt.html

  * igt@kms_psr@psr2_basic:
    - shard-iclb:         [PASS][22] -> [SKIP][23] ([fdo#109441]) +3 similar issues
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-iclb2/igt@kms_psr@psr2_basic.html
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-iclb4/igt@kms_psr@psr2_basic.html

  
#### Possible fixes ####

  * igt@gem_ctx_shared@exec-single-timeline-bsd:
    - shard-iclb:         [SKIP][24] ([fdo#110841]) -> [PASS][25]
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-iclb4/igt@gem_ctx_shared@exec-single-timeline-bsd.html
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-iclb8/igt@gem_ctx_shared@exec-single-timeline-bsd.html

  * igt@gem_exec_schedule@preemptive-hang-bsd:
    - shard-iclb:         [SKIP][26] ([fdo#111325]) -> [PASS][27] +3 similar issues
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-iclb4/igt@gem_exec_schedule@preemptive-hang-bsd.html
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-iclb3/igt@gem_exec_schedule@preemptive-hang-bsd.html

  * igt@gem_exec_schedule@reorder-wide-bsd1:
    - shard-iclb:         [SKIP][28] ([fdo#109276]) -> [PASS][29] +21 similar issues
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-iclb6/igt@gem_exec_schedule@reorder-wide-bsd1.html
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-iclb1/igt@gem_exec_schedule@reorder-wide-bsd1.html

  * igt@gem_exec_suspend@basic-s4-devices:
    - shard-iclb:         [FAIL][30] ([fdo#111699]) -> [PASS][31]
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-iclb4/igt@gem_exec_suspend@basic-s4-devices.html
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-iclb4/igt@gem_exec_suspend@basic-s4-devices.html

  * igt@gem_tiled_swapping@non-threaded:
    - shard-apl:          [DMESG-WARN][32] ([fdo#108686]) -> [PASS][33]
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-apl4/igt@gem_tiled_swapping@non-threaded.html
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-apl1/igt@gem_tiled_swapping@non-threaded.html

  * igt@gem_workarounds@suspend-resume-context:
    - shard-apl:          [DMESG-WARN][34] ([fdo#108566]) -> [PASS][35] +4 similar issues
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-apl2/igt@gem_workarounds@suspend-resume-context.html
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-apl6/igt@gem_workarounds@suspend-resume-context.html

  * igt@i915_suspend@fence-restore-tiled2untiled:
    - shard-kbl:          [DMESG-WARN][36] ([fdo#108566]) -> [PASS][37]
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-kbl4/igt@i915_suspend@fence-restore-tiled2untiled.html
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-kbl2/igt@i915_suspend@fence-restore-tiled2untiled.html

  * igt@kms_flip@flip-vs-expired-vblank-interruptible:
    - shard-kbl:          [FAIL][38] ([fdo#105363]) -> [PASS][39]
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-kbl4/igt@kms_flip@flip-vs-expired-vblank-interruptible.html
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-kbl3/igt@kms_flip@flip-vs-expired-vblank-interruptible.html

  * igt@kms_flip@wf_vblank-ts-check:
    - shard-apl:          [INCOMPLETE][40] ([fdo#103927]) -> [PASS][41] +2 similar issues
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-apl1/igt@kms_flip@wf_vblank-ts-check.html
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-apl7/igt@kms_flip@wf_vblank-ts-check.html

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite:
    - shard-apl:          [FAIL][42] ([fdo#103167]) -> [PASS][43]
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-apl3/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite.html
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-apl8/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite.html
    - shard-kbl:          [FAIL][44] ([fdo#103167]) -> [PASS][45]
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-kbl7/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite.html
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-kbl7/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite.html

  * igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-mmap-cpu:
    - shard-glk:          [FAIL][46] ([fdo#103167]) -> [PASS][47] +1 similar issue
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-glk7/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-mmap-cpu.html
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-glk8/igt@kms_frontbuffer_tracking@fbc-2p-scndscrn-pri-indfb-draw-mmap-cpu.html

  * igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-indfb-pgflip-blt:
    - shard-iclb:         [FAIL][48] ([fdo#103167]) -> [PASS][49] +3 similar issues
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-iclb8/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-indfb-pgflip-blt.html
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-iclb7/igt@kms_frontbuffer_tracking@fbcpsr-1p-primscrn-indfb-pgflip-blt.html

  * igt@kms_psr2_su@page_flip:
    - shard-iclb:         [SKIP][50] ([fdo#109642] / [fdo#111068]) -> [PASS][51]
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-iclb5/igt@kms_psr2_su@page_flip.html
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-iclb2/igt@kms_psr2_su@page_flip.html

  * igt@kms_psr@psr2_cursor_plane_onoff:
    - shard-iclb:         [SKIP][52] ([fdo#109441]) -> [PASS][53] +4 similar issues
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-iclb4/igt@kms_psr@psr2_cursor_plane_onoff.html
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-iclb2/igt@kms_psr@psr2_cursor_plane_onoff.html

  * igt@kms_setmode@basic:
    - shard-kbl:          [FAIL][54] ([fdo#99912]) -> [PASS][55]
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-kbl6/igt@kms_setmode@basic.html
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-kbl7/igt@kms_setmode@basic.html

  
#### Warnings ####

  * igt@gem_mocs_settings@mocs-rc6-bsd2:
    - shard-iclb:         [SKIP][56] ([fdo#109276]) -> [FAIL][57] ([fdo#111330])
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-iclb5/igt@gem_mocs_settings@mocs-rc6-bsd2.html
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-iclb1/igt@gem_mocs_settings@mocs-rc6-bsd2.html

  * igt@gem_mocs_settings@mocs-settings-bsd2:
    - shard-iclb:         [FAIL][58] ([fdo#111330]) -> [SKIP][59] ([fdo#109276]) +1 similar issue
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGT_5197/shard-iclb4/igt@gem_mocs_settings@mocs-settings-bsd2.html
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/shard-iclb7/igt@gem_mocs_settings@mocs-settings-bsd2.html

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

  [fdo#103167]: https://bugs.freedesktop.org/show_bug.cgi?id=103167
  [fdo#103232]: https://bugs.freedesktop.org/show_bug.cgi?id=103232
  [fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
  [fdo#105363]: https://bugs.freedesktop.org/show_bug.cgi?id=105363
  [fdo#105767]: https://bugs.freedesktop.org/show_bug.cgi?id=105767
  [fdo#108566]: https://bugs.freedesktop.org/show_bug.cgi?id=108566
  [fdo#108686]: https://bugs.freedesktop.org/show_bug.cgi?id=108686
  [fdo#109276]: https://bugs.freedesktop.org/show_bug.cgi?id=109276
  [fdo#109441]: https://bugs.freedesktop.org/show_bug.cgi?id=109441
  [fdo#109642]: https://bugs.freedesktop.org/show_bug.cgi?id=109642
  [fdo#110841]: https://bugs.freedesktop.org/show_bug.cgi?id=110841
  [fdo#110854]: https://bugs.freedesktop.org/show_bug.cgi?id=110854
  [fdo#111068]: https://bugs.freedesktop.org/show_bug.cgi?id=111068
  [fdo#111325]: https://bugs.freedesktop.org/show_bug.cgi?id=111325
  [fdo#111330]: https://bugs.freedesktop.org/show_bug.cgi?id=111330
  [fdo#111699]: https://bugs.freedesktop.org/show_bug.cgi?id=111699
  [fdo#99912]: https://bugs.freedesktop.org/show_bug.cgi?id=99912


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

  Missing    (1): shard-skl 


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

  * CI: CI-20190529 -> None
  * IGT: IGT_5197 -> IGTPW_3487

  CI-20190529: 20190529
  CI_DRM_6939: f839fe27dcaf8e4e0716c0b83a9481df3a1de27e @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_3487: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/
  IGT_5197: aa534ff47fd2f455c8be9e59eae807695b87fcdd @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3487/
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t] tests/kms_big_fb: Add over 32k HW stride tests
  2019-09-23 12:43   ` Ville Syrjälä
@ 2019-09-27 13:43     ` Juha-Pekka Heikkila
  2019-09-27 13:50       ` Ville Syrjälä
  0 siblings, 1 reply; 15+ messages in thread
From: Juha-Pekka Heikkila @ 2019-09-27 13:43 UTC (permalink / raw)
  To: Ville Syrjälä; +Cc: igt-dev

On 23.9.2019 15.43, Ville Syrjälä wrote:
> On Mon, Sep 23, 2019 at 01:40:33PM +0300, Juha-Pekka Heikkila wrote:
>> On ICL when using 64bpp formats strides can reach up to
>> 64k. These test try exact maximum HW strides so gtt
>> remapping will not come in play.
>>
>> Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
>> ---
>>   tests/kms_big_fb.c | 103 +++++++++++++++++++++++++++++++++++++++++++++++++++++
>>   1 file changed, 103 insertions(+)
> 
> I believe all you should need is something like:
> 
> --- a/tests/kms_big_fb.c
> +++ b/tests/kms_big_fb.c
> @@ -161,9 +161,6 @@ static void max_fb_size(data_t *data, int *width, int *height,
>   	uint64_t size;
>   	int i = 0;
>   
> -	*width = data->max_fb_width;
> -	*height = data->max_fb_height;
> -
>   	/* max fence stride is only 8k bytes on gen3 */
>   	if (intel_gen(data->devid) < 4 &&
>   	    format == DRM_FORMAT_XRGB8888)
> @@ -415,8 +412,16 @@ static bool test_pipe(data_t *data)
>   	return ret;
>   }
>   
> -static void test_scanout(data_t *data)
> +static void test_scanout(data_t *data, bool test_max_hw_stride)
>   {
> +	if (test_max_hw_stride) {
> +		data->big_fb_width = BIG;
> +		data->big_fb_height = BIG;
> +	} else {
> +		data->big_fb_width = data->max_fb_width;
> +		data->big_fb_height = data->max_fb_height;
> +	}
> +
>   	max_fb_size(data, &data->big_fb_width, &data->big_fb_height,
>   		    data->format, data->modifier);
>   
> 

Doing test this way will try 'bunch of coordinates pulled out of thin 
air' (as stated in the code :) ) but my version tries the explicit 
maximum limits with idea if that works then any other coordinate would 
work as well.
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t] tests/kms_big_fb: Add over 32k HW stride tests
  2019-09-27 13:43     ` Juha-Pekka Heikkila
@ 2019-09-27 13:50       ` Ville Syrjälä
  0 siblings, 0 replies; 15+ messages in thread
From: Ville Syrjälä @ 2019-09-27 13:50 UTC (permalink / raw)
  To: Juha-Pekka Heikkila; +Cc: igt-dev

On Fri, Sep 27, 2019 at 04:43:43PM +0300, Juha-Pekka Heikkila wrote:
> On 23.9.2019 15.43, Ville Syrjälä wrote:
> > On Mon, Sep 23, 2019 at 01:40:33PM +0300, Juha-Pekka Heikkila wrote:
> >> On ICL when using 64bpp formats strides can reach up to
> >> 64k. These test try exact maximum HW strides so gtt
> >> remapping will not come in play.
> >>
> >> Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
> >> ---
> >>   tests/kms_big_fb.c | 103 +++++++++++++++++++++++++++++++++++++++++++++++++++++
> >>   1 file changed, 103 insertions(+)
> > 
> > I believe all you should need is something like:
> > 
> > --- a/tests/kms_big_fb.c
> > +++ b/tests/kms_big_fb.c
> > @@ -161,9 +161,6 @@ static void max_fb_size(data_t *data, int *width, int *height,
> >   	uint64_t size;
> >   	int i = 0;
> >   
> > -	*width = data->max_fb_width;
> > -	*height = data->max_fb_height;
> > -
> >   	/* max fence stride is only 8k bytes on gen3 */
> >   	if (intel_gen(data->devid) < 4 &&
> >   	    format == DRM_FORMAT_XRGB8888)
> > @@ -415,8 +412,16 @@ static bool test_pipe(data_t *data)
> >   	return ret;
> >   }
> >   
> > -static void test_scanout(data_t *data)
> > +static void test_scanout(data_t *data, bool test_max_hw_stride)
> >   {
> > +	if (test_max_hw_stride) {
> > +		data->big_fb_width = BIG;
> > +		data->big_fb_height = BIG;
> > +	} else {
> > +		data->big_fb_width = data->max_fb_width;
> > +		data->big_fb_height = data->max_fb_height;
> > +	}
> > +
> >   	max_fb_size(data, &data->big_fb_width, &data->big_fb_height,
> >   		    data->format, data->modifier);
> >   
> > 
> 
> Doing test this way will try 'bunch of coordinates pulled out of thin 
> air' (as stated in the code :) ) but my version tries the explicit 
> maximum limits with idea if that works then any other coordinate would 
> work as well.

The last element in the "thin air" coordinates array tests the maximum
values already.

Not that I think it matters much for this test. If the max stride value
is broken then it probably doesn't even matter what panning coordinates
we use.

-- 
Ville Syrjälä
Intel
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] ✗ GitLab.Pipeline: warning for tests/kms_big_fb: Add over 32k HW stride tests (rev3)
  2019-09-23 10:40 [igt-dev] [PATCH i-g-t] test longer than 32k strides Juha-Pekka Heikkila
                   ` (4 preceding siblings ...)
  2019-09-23 17:18 ` [igt-dev] ✓ Fi.CI.IGT: success for tests/kms_big_fb: Add over 32k HW stride tests Patchwork
@ 2019-10-24  9:19 ` Patchwork
  2019-10-24  9:35 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
  2019-10-25 10:46 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
  7 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2019-10-24  9:19 UTC (permalink / raw)
  To: Juha-Pekka Heikkila; +Cc: igt-dev

== Series Details ==

Series: tests/kms_big_fb: Add over 32k HW stride tests (rev3)
URL   : https://patchwork.freedesktop.org/series/67079/
State : warning

== Summary ==

ERROR! This series introduces new undocumented tests:

kms_big_fb@linear-max-hw-stride-32bpp-rotate-0
kms_big_fb@linear-max-hw-stride-32bpp-rotate-180
kms_big_fb@linear-max-hw-stride-64bpp-rotate-0
kms_big_fb@linear-max-hw-stride-64bpp-rotate-180
kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0
kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-180
kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-0
kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-180
kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0
kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180
kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0
kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180
kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0
kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-180
kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0
kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180

Can you document them as per the requirement in the [CONTRIBUTING.md]?

[Documentation] has more details on how to do this.

Here are few examples:
https://gitlab.freedesktop.org/drm/igt-gpu-tools/commit/0316695d03aa46108296b27f3982ec93200c7a6e
https://gitlab.freedesktop.org/drm/igt-gpu-tools/commit/443cc658e1e6b492ee17bf4f4d891029eb7a205d

Thanks in advance!

[CONTRIBUTING.md]: https://gitlab.freedesktop.org/drm/igt-gpu-tools/blob/master/CONTRIBUTING.md#L19
[Documentation]: https://drm.pages.freedesktop.org/igt-gpu-tools/igt-gpu-tools-Core.html#igt-describe

Other than that, pipeline status: SUCCESS.

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

== Logs ==

For more details see: https://gitlab.freedesktop.org/gfx-ci/igt-ci-tags/pipelines/72996
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] ✓ Fi.CI.BAT: success for tests/kms_big_fb: Add over 32k HW stride tests (rev3)
  2019-09-23 10:40 [igt-dev] [PATCH i-g-t] test longer than 32k strides Juha-Pekka Heikkila
                   ` (5 preceding siblings ...)
  2019-10-24  9:19 ` [igt-dev] ✗ GitLab.Pipeline: warning for tests/kms_big_fb: Add over 32k HW stride tests (rev3) Patchwork
@ 2019-10-24  9:35 ` Patchwork
  2019-10-25 10:46 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
  7 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2019-10-24  9:35 UTC (permalink / raw)
  To: Juha-Pekka Heikkila; +Cc: igt-dev

== Series Details ==

Series: tests/kms_big_fb: Add over 32k HW stride tests (rev3)
URL   : https://patchwork.freedesktop.org/series/67079/
State : success

== Summary ==

CI Bug Log - changes from CI_DRM_7169 -> IGTPW_3602
====================================================

Summary
-------

  **SUCCESS**

  No regressions found.

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

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

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

### IGT changes ###

#### Issues hit ####

  * igt@i915_selftest@live_gem_contexts:
    - fi-cfl-8109u:       [PASS][1] -> [DMESG-FAIL][2] ([fdo#112050 ])
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/fi-cfl-8109u/igt@i915_selftest@live_gem_contexts.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/fi-cfl-8109u/igt@i915_selftest@live_gem_contexts.html

  
#### Possible fixes ####

  * igt@gem_cpu_reloc@basic:
    - fi-icl-u3:          [DMESG-WARN][3] ([fdo#107724]) -> [PASS][4]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/fi-icl-u3/igt@gem_cpu_reloc@basic.html
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/fi-icl-u3/igt@gem_cpu_reloc@basic.html

  * igt@gem_ctx_create@basic-files:
    - fi-bxt-dsi:         [INCOMPLETE][5] ([fdo#103927]) -> [PASS][6]
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/fi-bxt-dsi/igt@gem_ctx_create@basic-files.html
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/fi-bxt-dsi/igt@gem_ctx_create@basic-files.html
    - {fi-tgl-u2}:        [INCOMPLETE][7] ([fdo#111735]) -> [PASS][8]
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/fi-tgl-u2/igt@gem_ctx_create@basic-files.html
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/fi-tgl-u2/igt@gem_ctx_create@basic-files.html

  * igt@gem_ctx_switch@legacy-render:
    - fi-apl-guc:         [INCOMPLETE][9] ([fdo#103927] / [fdo#111381]) -> [PASS][10]
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/fi-apl-guc/igt@gem_ctx_switch@legacy-render.html
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/fi-apl-guc/igt@gem_ctx_switch@legacy-render.html
    - fi-icl-u3:          [INCOMPLETE][11] ([fdo#107713] / [fdo#111381]) -> [PASS][12]
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/fi-icl-u3/igt@gem_ctx_switch@legacy-render.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/fi-icl-u3/igt@gem_ctx_switch@legacy-render.html

  * igt@gem_exec_create@basic:
    - fi-icl-u2:          [INCOMPLETE][13] ([fdo#107713]) -> [PASS][14]
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/fi-icl-u2/igt@gem_exec_create@basic.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/fi-icl-u2/igt@gem_exec_create@basic.html

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

  [fdo#103927]: https://bugs.freedesktop.org/show_bug.cgi?id=103927
  [fdo#107713]: https://bugs.freedesktop.org/show_bug.cgi?id=107713
  [fdo#107724]: https://bugs.freedesktop.org/show_bug.cgi?id=107724
  [fdo#111381]: https://bugs.freedesktop.org/show_bug.cgi?id=111381
  [fdo#111735]: https://bugs.freedesktop.org/show_bug.cgi?id=111735
  [fdo#112050 ]: https://bugs.freedesktop.org/show_bug.cgi?id=112050 
  [fdo#112057]: https://bugs.freedesktop.org/show_bug.cgi?id=112057
  [fdo#112096]: https://bugs.freedesktop.org/show_bug.cgi?id=112096


Participating hosts (52 -> 44)
------------------------------

  Missing    (8): fi-ilk-m540 fi-hsw-4200u fi-byt-squawks fi-bsw-cyan fi-snb-2520m fi-icl-y fi-byt-clapper fi-bdw-samus 


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

  * CI: CI-20190529 -> None
  * IGT: IGT_5236 -> IGTPW_3602

  CI-20190529: 20190529
  CI_DRM_7169: 56b44bf5a6169d7fd60142b83d4b776e124cf9bc @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_3602: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/index.html
  IGT_5236: 8153b95b53bdef26d2c3e318197d174e982b4265 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools



== Testlist changes ==

+igt@kms_big_fb@linear-max-hw-stride-32bpp-rotate-0
+igt@kms_big_fb@linear-max-hw-stride-32bpp-rotate-180
+igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-0
+igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-180
+igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0
+igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-180
+igt@kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-0
+igt@kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-180
+igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0
+igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-180
+igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0
+igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180
+igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0
+igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180
+igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0
+igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/index.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t] tests/kms_big_fb: Add max HW stride length tests
       [not found]   ` <1571904804-2248-1-git-send-email-juhapekka.heikkila@gmail.com>
@ 2019-10-24 13:55     ` Ville Syrjälä
  0 siblings, 0 replies; 15+ messages in thread
From: Ville Syrjälä @ 2019-10-24 13:55 UTC (permalink / raw)
  To: Juha-Pekka Heikkila; +Cc: igt-dev

On Thu, Oct 24, 2019 at 11:13:24AM +0300, Juha-Pekka Heikkila wrote:
> Test maximum HW stride lenghts. On Intel HW up to Gen10
> maximum HW stride lenght is 32K. On Gen11 when using 64bpp
> formats strides can reach up to 64k. These test try exact
> maximum HW strides so gtt remapping will not come in play.
> 
> v2: (Ville Syrjäjä) Build new tests to run using existing code.
> 
> Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
> ---
>  tests/kms_big_fb.c | 71 +++++++++++++++++++++++++++++++++++++++++++++++++++---
>  1 file changed, 68 insertions(+), 3 deletions(-)
> 
> diff --git a/tests/kms_big_fb.c b/tests/kms_big_fb.c
> index c3498c6..de24feb 100644
> --- a/tests/kms_big_fb.c
> +++ b/tests/kms_big_fb.c
> @@ -48,6 +48,9 @@ typedef struct {
>  	igt_render_copyfunc_t render_copy;
>  	drm_intel_bufmgr *bufmgr;
>  	struct intel_batchbuffer *batch;
> +	bool max_hw_stride_test;
> +	int hw_stride;
> +	int max_hw_fb_width;
>  } data_t;
>  
>  static void init_buf(data_t *data,
> @@ -161,9 +164,6 @@ static void max_fb_size(data_t *data, int *width, int *height,
>  	uint64_t size;
>  	int i = 0;
>  
> -	*width = data->max_fb_width;
> -	*height = data->max_fb_height;
> -
>  	/* max fence stride is only 8k bytes on gen3 */
>  	if (intel_gen(data->devid) < 4 &&
>  	    format == DRM_FORMAT_XRGB8888)
> @@ -417,6 +417,14 @@ static bool test_pipe(data_t *data)
>  
>  static void test_scanout(data_t *data)
>  {
> +	if (data->max_hw_stride_test) {

This parameter seems redundant. The format/mod loop can just assign
big_fb_width/height directly.

> +		data->big_fb_width = data->max_hw_fb_width;
> +		data->big_fb_height = data->max_hw_fb_width;
> +	} else {
> +		data->big_fb_width = data->max_fb_width;
> +		data->big_fb_height = data->max_fb_height;
> +	}
> +
>  	max_fb_size(data, &data->big_fb_width, &data->big_fb_height,
>  		    data->format, data->modifier);
>  
> @@ -649,6 +657,8 @@ igt_main
>  
>  		data.bufmgr = drm_intel_bufmgr_gem_init(data.drm_fd, 4096);
>  		data.batch = intel_batchbuffer_alloc(data.bufmgr, data.devid);
> +
> +		data.max_hw_stride_test = false;
>  	}
>  
>  	/*
> @@ -704,6 +714,61 @@ igt_main
>  		}
>  	}
>  
> +	data.max_hw_stride_test = true;
> +	for (int i = 0; i < ARRAY_SIZE(modifiers); i++) {
> +		data.modifier = modifiers[i].modifier;
> +
> +		if (intel_gen(data.devid) < 11) {
> +			data.hw_stride = 32768;

That's only true for ilk+. We need to replicate i9xx_plane_max_stride()
from the kernel here. Also please move this into a nice little function
so we don't have to look at it when reading the main code. And I think
the function should just return the resulting max fb w/h and leave the
max stride/etc. as internal implementation details.

> +		} else {
> +			switch (data.modifier) {
> +			case DRM_FORMAT_MOD_LINEAR:
> +				data.hw_stride = 65536-64;
> +				break;
> +			default:
> +				data.hw_stride = 65536;
> +				break;
> +			}
> +		}
> +
> +		for (int j = 0; j < ARRAY_SIZE(formats); j++) {
> +			/*
> +			 * try only those formats which can show full lenght. 8K is
> +			 * the magic maximum pixels in Intel HW. Here 32K is used
> +			 * to have CI test results consistent for all platforms,
> +			 * 32K is smallest number possbily coming to hw_stride
> +			 * from above if{}else{}..
> +			 */
> +			if (32768 / (formats[j].bpp >> 3) > 8192)
> +				continue;
> +
> +			data.format = formats[j].format;
> +
> +			for (int k = 0; k < ARRAY_SIZE(rotations); k++) {
> +				data.rotation = rotations[k].rotation;
> +				/*
> +				 * Seems any format currently coming here will not support
> +				 * 90/270 rotations so skip those rotations.
> +				 */
> +				if (data.rotation&(IGT_ROTATION_90|IGT_ROTATION_270))
> +					continue;
> +
> +				igt_subtest_f("%s-max-hw-stride-%dbpp-rotate-%d", modifiers[i].name,
> +					      formats[j].bpp, rotations[k].angle) {
> +					data.max_hw_fb_width = data.hw_stride / (formats[j].bpp >> 3);
> +					igt_require(data.format == DRM_FORMAT_C8 ||
> +						    igt_fb_supported_format(data.format));
> +					igt_require(igt_display_has_format_mod(&data.display, data.format, data.modifier));
> +					test_scanout(&data);
> +				}
> +			}
> +
> +			igt_fixture
> +				cleanup_fb(&data);
> +		}
> +	}
> +	data.max_hw_stride_test = false;
> +
>  	igt_fixture {
>  		igt_display_fini(&data.display);
>  
> -- 
> 2.7.4
> 
> _______________________________________________
> igt-dev mailing list
> igt-dev@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/igt-dev

-- 
Ville Syrjälä
Intel
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] ✗ Fi.CI.IGT: failure for tests/kms_big_fb: Add over 32k HW stride tests (rev3)
  2019-09-23 10:40 [igt-dev] [PATCH i-g-t] test longer than 32k strides Juha-Pekka Heikkila
                   ` (6 preceding siblings ...)
  2019-10-24  9:35 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
@ 2019-10-25 10:46 ` Patchwork
  7 siblings, 0 replies; 15+ messages in thread
From: Patchwork @ 2019-10-25 10:46 UTC (permalink / raw)
  To: Juha-Pekka Heikkila; +Cc: igt-dev

== Series Details ==

Series: tests/kms_big_fb: Add over 32k HW stride tests (rev3)
URL   : https://patchwork.freedesktop.org/series/67079/
State : failure

== Summary ==

CI Bug Log - changes from CI_DRM_7169_full -> IGTPW_3602_full
====================================================

Summary
-------

  **FAILURE**

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

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

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

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

### IGT changes ###

#### Possible regressions ####

  * igt@gem_eio@in-flight-contexts-1us:
    - shard-iclb:         [PASS][1] -> [SKIP][2] +1 similar issue
   [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-iclb6/igt@gem_eio@in-flight-contexts-1us.html
   [2]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-iclb5/igt@gem_eio@in-flight-contexts-1us.html

  * igt@gem_exec_parallel@vcs0-contexts:
    - shard-apl:          NOTRUN -> [FAIL][3]
   [3]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-apl8/igt@gem_exec_parallel@vcs0-contexts.html
    - shard-glk:          [PASS][4] -> [FAIL][5]
   [4]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-glk4/igt@gem_exec_parallel@vcs0-contexts.html
   [5]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-glk3/igt@gem_exec_parallel@vcs0-contexts.html

  * igt@gem_exec_parallel@vecs0-fds:
    - shard-kbl:          [PASS][6] -> [FAIL][7] +5 similar issues
   [6]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-kbl2/igt@gem_exec_parallel@vecs0-fds.html
   [7]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-kbl2/igt@gem_exec_parallel@vecs0-fds.html

  * {igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-180} (NEW):
    - shard-iclb:         NOTRUN -> [FAIL][8] +1 similar issue
   [8]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-iclb4/igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-180.html

  * {igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0} (NEW):
    - shard-iclb:         NOTRUN -> [SKIP][9] +1 similar issue
   [9]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-iclb4/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0.html
    - {shard-tglb}:       NOTRUN -> [SKIP][10] +2 similar issues
   [10]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-tglb2/igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0.html

  
#### Suppressed ####

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

  * igt@gem_eio@in-flight-contexts-1us:
    - {shard-tglb}:       [PASS][11] -> [SKIP][12] +1 similar issue
   [11]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-tglb3/igt@gem_eio@in-flight-contexts-1us.html
   [12]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-tglb4/igt@gem_eio@in-flight-contexts-1us.html

  * igt@kms_color@pipe-b-ctm-negative:
    - {shard-tglb}:       [PASS][13] -> [TIMEOUT][14]
   [13]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-tglb5/igt@kms_color@pipe-b-ctm-negative.html
   [14]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-tglb2/igt@kms_color@pipe-b-ctm-negative.html

  * igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-onoff:
    - {shard-tglb}:       [SKIP][15] ([fdo#111825]) -> [TIMEOUT][16]
   [15]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-tglb1/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-onoff.html
   [16]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-tglb2/igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-onoff.html

  
New tests
---------

  New tests have been introduced between CI_DRM_7169_full and IGTPW_3602_full:

### New IGT tests (16) ###

  * igt@kms_big_fb@linear-max-hw-stride-32bpp-rotate-0:
    - Statuses : 6 pass(s)
    - Exec time: [1.47, 29.38] s

  * igt@kms_big_fb@linear-max-hw-stride-32bpp-rotate-180:
    - Statuses : 6 pass(s)
    - Exec time: [1.48, 1.98] s

  * igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-0:
    - Statuses : 1 fail(s) 5 skip(s)
    - Exec time: [0.0, 0.36] s

  * igt@kms_big_fb@linear-max-hw-stride-64bpp-rotate-180:
    - Statuses : 1 fail(s) 5 skip(s)
    - Exec time: [0.0, 0.25] s

  * igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-0:
    - Statuses : 7 pass(s)
    - Exec time: [1.38, 29.39] s

  * igt@kms_big_fb@x-tiled-max-hw-stride-32bpp-rotate-180:
    - Statuses : 6 pass(s)
    - Exec time: [1.34, 1.97] s

  * igt@kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-0:
    - Statuses : 2 pass(s) 5 skip(s)
    - Exec time: [0.0, 29.24] s

  * igt@kms_big_fb@x-tiled-max-hw-stride-64bpp-rotate-180:
    - Statuses : 2 pass(s) 5 skip(s)
    - Exec time: [0.0, 29.20] s

  * igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-0:
    - Statuses : 3 pass(s) 1 skip(s)
    - Exec time: [0.0, 1.99] s

  * igt@kms_big_fb@y-tiled-max-hw-stride-32bpp-rotate-180:
    - Statuses : 5 pass(s) 2 skip(s)
    - Exec time: [0.0, 29.19] s

  * igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-0:
    - Statuses : 1 pass(s) 4 skip(s)
    - Exec time: [0.0, 1.71] s

  * igt@kms_big_fb@y-tiled-max-hw-stride-64bpp-rotate-180:
    - Statuses : 2 pass(s) 5 skip(s)
    - Exec time: [0.0, 29.12] s

  * igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-0:
    - Statuses : 4 pass(s) 3 skip(s)
    - Exec time: [0.0, 1.99] s

  * igt@kms_big_fb@yf-tiled-max-hw-stride-32bpp-rotate-180:
    - Statuses : 3 pass(s) 2 skip(s)
    - Exec time: [0.0, 1.99] s

  * igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-0:
    - Statuses : 7 skip(s)
    - Exec time: [0.0] s

  * igt@kms_big_fb@yf-tiled-max-hw-stride-64bpp-rotate-180:
    - Statuses : 7 skip(s)
    - Exec time: [0.0] s

  

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

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

### IGT changes ###

#### Issues hit ####

  * igt@gem_busy@basic-hang-rcs0:
    - shard-apl:          [PASS][17] -> [SKIP][18] ([fdo#109271]) +15 similar issues
   [17]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-apl4/igt@gem_busy@basic-hang-rcs0.html
   [18]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-apl8/igt@gem_busy@basic-hang-rcs0.html

  * igt@gem_ctx_isolation@vcs1-dirty-switch:
    - shard-iclb:         [PASS][19] -> [SKIP][20] ([fdo#109276] / [fdo#112080])
   [19]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-iclb1/igt@gem_ctx_isolation@vcs1-dirty-switch.html
   [20]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-iclb6/igt@gem_ctx_isolation@vcs1-dirty-switch.html

  * igt@gem_eio@in-flight-external:
    - shard-glk:          [PASS][21] -> [SKIP][22] ([fdo#109271]) +19 similar issues
   [21]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-glk7/igt@gem_eio@in-flight-external.html
   [22]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-glk3/igt@gem_eio@in-flight-external.html

  * igt@gem_exec_parallel@vcs1-fds:
    - shard-iclb:         [PASS][23] -> [SKIP][24] ([fdo#112080]) +9 similar issues
   [23]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-iclb4/igt@gem_exec_parallel@vcs1-fds.html
   [24]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-iclb3/igt@gem_exec_parallel@vcs1-fds.html

  * igt@gem_exec_schedule@preempt-bsd:
    - shard-iclb:         [PASS][25] -> [SKIP][26] ([fdo#111325]) +4 similar issues
   [25]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-iclb6/igt@gem_exec_schedule@preempt-bsd.html
   [26]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-iclb2/igt@gem_exec_schedule@preempt-bsd.html

  * igt@gem_exec_schedule@preempt-queue-bsd2:
    - shard-iclb:         [PASS][27] -> [SKIP][28] ([fdo#109276]) +12 similar issues
   [27]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-iclb4/igt@gem_exec_schedule@preempt-queue-bsd2.html
   [28]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-iclb5/igt@gem_exec_schedule@preempt-queue-bsd2.html

  * igt@gem_exec_schedule@preempt-queue-chain-bsd:
    - shard-glk:          [PASS][29] -> [INCOMPLETE][30] ([fdo#103359] / [k.org#198133]) +1 similar issue
   [29]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-glk3/igt@gem_exec_schedule@preempt-queue-chain-bsd.html
   [30]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-glk5/igt@gem_exec_schedule@preempt-queue-chain-bsd.html

  * igt@gem_exec_schedule@preempt-queue-chain-bsd1:
    - shard-kbl:          [PASS][31] -> [INCOMPLETE][32] ([fdo#103665])
   [31]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-kbl2/igt@gem_exec_schedule@preempt-queue-chain-bsd1.html
   [32]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-kbl2/igt@gem_exec_schedule@preempt-queue-chain-bsd1.html

  * igt@gem_userptr_blits@sync-unmap-cycles:
    - shard-snb:          [PASS][33] -> [DMESG-WARN][34] ([fdo#111870]) +2 similar issues
   [33]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-snb2/igt@gem_userptr_blits@sync-unmap-cycles.html
   [34]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-snb4/igt@gem_userptr_blits@sync-unmap-cycles.html
    - shard-hsw:          [PASS][35] -> [DMESG-WARN][36] ([fdo#111870])
   [35]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-hsw2/igt@gem_userptr_blits@sync-unmap-cycles.html
   [36]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-hsw4/igt@gem_userptr_blits@sync-unmap-cycles.html

  * igt@gem_workarounds@suspend-resume-fd:
    - shard-kbl:          [PASS][37] -> [DMESG-WARN][38] ([fdo#108566]) +4 similar issues
   [37]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-kbl4/igt@gem_workarounds@suspend-resume-fd.html
   [38]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-kbl4/igt@gem_workarounds@suspend-resume-fd.html

  * igt@i915_pm_rc6_residency@rc6-accuracy:
    - shard-snb:          [PASS][39] -> [SKIP][40] ([fdo#109271])
   [39]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-snb6/igt@i915_pm_rc6_residency@rc6-accuracy.html
   [40]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-snb6/igt@i915_pm_rc6_residency@rc6-accuracy.html

  * igt@i915_selftest@live_hangcheck:
    - shard-snb:          [PASS][41] -> [INCOMPLETE][42] ([fdo#105411])
   [41]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-snb2/igt@i915_selftest@live_hangcheck.html
   [42]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-snb7/igt@i915_selftest@live_hangcheck.html

  * igt@kms_busy@extended-modeset-hang-newfb-render-c:
    - shard-hsw:          [PASS][43] -> [INCOMPLETE][44] ([fdo#103540])
   [43]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-hsw1/igt@kms_busy@extended-modeset-hang-newfb-render-c.html
   [44]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-hsw7/igt@kms_busy@extended-modeset-hang-newfb-render-c.html

  * igt@kms_cursor_crc@pipe-a-cursor-256x256-random:
    - shard-kbl:          [PASS][45] -> [FAIL][46] ([fdo#103232]) +1 similar issue
   [45]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-kbl4/igt@kms_cursor_crc@pipe-a-cursor-256x256-random.html
   [46]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-kbl4/igt@kms_cursor_crc@pipe-a-cursor-256x256-random.html
    - shard-apl:          [PASS][47] -> [FAIL][48] ([fdo#103232])
   [47]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-apl7/igt@kms_cursor_crc@pipe-a-cursor-256x256-random.html
   [48]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-apl8/igt@kms_cursor_crc@pipe-a-cursor-256x256-random.html

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-render:
    - shard-iclb:         [PASS][49] -> [FAIL][50] ([fdo#103167]) +4 similar issues
   [49]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-iclb3/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-render.html
   [50]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-iclb8/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-render.html

  * igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-pwrite:
    - shard-apl:          [PASS][51] -> [FAIL][52] ([fdo#103167])
   [51]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-apl6/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-pwrite.html
   [52]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-apl8/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-pwrite.html
    - shard-kbl:          [PASS][53] -> [FAIL][54] ([fdo#103167])
   [53]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-kbl2/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-pwrite.html
   [54]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-kbl4/igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-pwrite.html

  * igt@kms_frontbuffer_tracking@fbc-modesetfrombusy:
    - shard-apl:          [PASS][55] -> [INCOMPLETE][56] ([fdo#103927])
   [55]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-apl7/igt@kms_frontbuffer_tracking@fbc-modesetfrombusy.html
   [56]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-apl8/igt@kms_frontbuffer_tracking@fbc-modesetfrombusy.html

  * igt@kms_pipe_crc_basic@hang-read-crc-pipe-a:
    - shard-kbl:          [PASS][57] -> [SKIP][58] ([fdo#109271]) +16 similar issues
   [57]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-kbl4/igt@kms_pipe_crc_basic@hang-read-crc-pipe-a.html
   [58]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-kbl2/igt@kms_pipe_crc_basic@hang-read-crc-pipe-a.html

  * igt@kms_psr@psr2_primary_mmap_cpu:
    - shard-iclb:         [PASS][59] -> [SKIP][60] ([fdo#109441]) +1 similar issue
   [59]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-iclb2/igt@kms_psr@psr2_primary_mmap_cpu.html
   [60]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-iclb6/igt@kms_psr@psr2_primary_mmap_cpu.html

  * igt@kms_vblank@pipe-a-query-forked-busy-hang:
    - shard-iclb:         [PASS][61] -> [SKIP][62] ([fdo#109278])
   [61]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-iclb2/igt@kms_vblank@pipe-a-query-forked-busy-hang.html
   [62]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-iclb5/igt@kms_vblank@pipe-a-query-forked-busy-hang.html

  * igt@kms_vblank@pipe-b-ts-continuation-suspend:
    - shard-apl:          [PASS][63] -> [DMESG-WARN][64] ([fdo#108566])
   [63]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-apl6/igt@kms_vblank@pipe-b-ts-continuation-suspend.html
   [64]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-apl4/igt@kms_vblank@pipe-b-ts-continuation-suspend.html

  * igt@kms_vblank@pipe-c-ts-continuation-suspend:
    - shard-iclb:         [PASS][65] -> [DMESG-WARN][66] ([fdo#111764])
   [65]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-iclb6/igt@kms_vblank@pipe-c-ts-continuation-suspend.html
   [66]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-iclb1/igt@kms_vblank@pipe-c-ts-continuation-suspend.html

  
#### Possible fixes ####

  * igt@gem_busy@busy-vcs1:
    - shard-iclb:         [SKIP][67] ([fdo#112080]) -> [PASS][68] +11 similar issues
   [67]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-iclb6/igt@gem_busy@busy-vcs1.html
   [68]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-iclb1/igt@gem_busy@busy-vcs1.html

  * igt@gem_ctx_isolation@vcs1-s3:
    - shard-iclb:         [SKIP][69] ([fdo#109276] / [fdo#112080]) -> [PASS][70]
   [69]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-iclb6/igt@gem_ctx_isolation@vcs1-s3.html
   [70]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-iclb1/igt@gem_ctx_isolation@vcs1-s3.html

  * igt@gem_ctx_shared@q-promotion-bsd1:
    - shard-iclb:         [FAIL][71] -> [PASS][72]
   [71]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-iclb4/igt@gem_ctx_shared@q-promotion-bsd1.html
   [72]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-iclb2/igt@gem_ctx_shared@q-promotion-bsd1.html
    - shard-glk:          [FAIL][73] -> [PASS][74]
   [73]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-glk5/igt@gem_ctx_shared@q-promotion-bsd1.html
   [74]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-glk9/igt@gem_ctx_shared@q-promotion-bsd1.html
    - shard-apl:          [FAIL][75] -> [PASS][76]
   [75]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-apl4/igt@gem_ctx_shared@q-promotion-bsd1.html
   [76]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-apl2/igt@gem_ctx_shared@q-promotion-bsd1.html

  * igt@gem_ctx_shared@q-smoketest-render:
    - {shard-tglb}:       [INCOMPLETE][77] ([fdo# 111852 ]) -> [PASS][78]
   [77]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-tglb6/igt@gem_ctx_shared@q-smoketest-render.html
   [78]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-tglb4/igt@gem_ctx_shared@q-smoketest-render.html

  * igt@gem_ctx_switch@all-light:
    - shard-iclb:         [INCOMPLETE][79] ([fdo#107713]) -> [PASS][80]
   [79]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-iclb7/igt@gem_ctx_switch@all-light.html
   [80]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-iclb3/igt@gem_ctx_switch@all-light.html

  * igt@gem_ctx_switch@vcs0-heavy:
    - shard-hsw:          [INCOMPLETE][81] ([fdo#103540]) -> [PASS][82]
   [81]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-hsw7/igt@gem_ctx_switch@vcs0-heavy.html
   [82]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-hsw4/igt@gem_ctx_switch@vcs0-heavy.html

  * igt@gem_exec_schedule@preempt-hang-blt:
    - shard-iclb:         [SKIP][83] ([fdo#112118]) -> [PASS][84]
   [83]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-iclb4/igt@gem_exec_schedule@preempt-hang-blt.html
   [84]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-iclb5/igt@gem_exec_schedule@preempt-hang-blt.html
    - shard-glk:          [SKIP][85] ([fdo#109271]) -> [PASS][86]
   [85]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-glk5/igt@gem_exec_schedule@preempt-hang-blt.html
   [86]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-glk3/igt@gem_exec_schedule@preempt-hang-blt.html
    - shard-apl:          [SKIP][87] ([fdo#109271]) -> [PASS][88] +1 similar issue
   [87]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-apl4/igt@gem_exec_schedule@preempt-hang-blt.html
   [88]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-apl8/igt@gem_exec_schedule@preempt-hang-blt.html

  * igt@gem_exec_schedule@preempt-other-chain-bsd:
    - shard-iclb:         [SKIP][89] ([fdo#111325]) -> [PASS][90] +4 similar issues
   [89]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-iclb1/igt@gem_exec_schedule@preempt-other-chain-bsd.html
   [90]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-iclb7/igt@gem_exec_schedule@preempt-other-chain-bsd.html

  * igt@gem_exec_schedule@preempt-queue-contexts-chain-bsd:
    - shard-glk:          [FAIL][91] ([fdo#112128]) -> [PASS][92]
   [91]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-glk5/igt@gem_exec_schedule@preempt-queue-contexts-chain-bsd.html
   [92]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-glk1/igt@gem_exec_schedule@preempt-queue-contexts-chain-bsd.html
    - shard-apl:          [FAIL][93] ([fdo#112128]) -> [PASS][94]
   [93]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-apl4/igt@gem_exec_schedule@preempt-queue-contexts-chain-bsd.html
   [94]: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/shard-apl2/igt@gem_exec_schedule@preempt-queue-contexts-chain-bsd.html

  * igt@gem_exec_schedule@wide-blt:
    - shard-kbl:          [INCOMPLETE][95] ([fdo#103665]) -> [PASS][96]
   [95]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7169/shard-kbl3/igt@gem_exec_schedule

== Logs ==

For more details see: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_3602/index.html
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t] tests/kms_big_fb: Add max HW stride length tests
@ 2020-03-19 19:36 Juha-Pekka Heikkila
  0 siblings, 0 replies; 15+ messages in thread
From: Juha-Pekka Heikkila @ 2020-03-19 19:36 UTC (permalink / raw)
  To: igt-dev

Test maximum HW stride lenghts. On Intel HW from gen5 up to
Gen10 maximum HW stride lenght is 32K. On Gen11 when using
64bpp formats strides can reach up to 64k. These test try
exact maximum HW strides so gtt remapping will not come in
play.

Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
---
 tests/kms_big_fb.c | 87 ++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 84 insertions(+), 3 deletions(-)

diff --git a/tests/kms_big_fb.c b/tests/kms_big_fb.c
index eb144da9..b825362e 100644
--- a/tests/kms_big_fb.c
+++ b/tests/kms_big_fb.c
@@ -48,6 +48,9 @@ typedef struct {
 	igt_render_copyfunc_t render_copy;
 	drm_intel_bufmgr *bufmgr;
 	struct intel_batchbuffer *batch;
+	bool max_hw_stride_test;
+	int hw_stride;
+	int max_hw_fb_width;
 } data_t;
 
 static void init_buf(data_t *data,
@@ -163,9 +166,6 @@ static void max_fb_size(data_t *data, int *width, int *height,
 	uint64_t size;
 	int i = 0;
 
-	*width = data->max_fb_width;
-	*height = data->max_fb_height;
-
 	/* max fence stride is only 8k bytes on gen3 */
 	if (intel_gen(data->devid) < 4 &&
 	    format == DRM_FORMAT_XRGB8888)
@@ -419,6 +419,14 @@ static bool test_pipe(data_t *data)
 
 static void test_scanout(data_t *data)
 {
+	if (data->max_hw_stride_test) {
+		data->big_fb_width = data->max_hw_fb_width;
+		data->big_fb_height = data->max_hw_fb_width;
+	} else {
+		data->big_fb_width = data->max_fb_width;
+		data->big_fb_height = data->max_fb_height;
+	}
+
 	max_fb_size(data, &data->big_fb_width, &data->big_fb_height,
 		    data->format, data->modifier);
 
@@ -570,6 +578,28 @@ test_addfb(data_t *data)
 	gem_close(data->drm_fd, bo);
 }
 
+/*
+ * TODO: adapt i9xx_plane_max_stride(..) here from intel_display.c
+ * in kernel sources to support older gen for max hw stride length
+ * testing.
+ */
+static void
+set_max_hw_stride(data_t *data)
+{
+	if (intel_gen(data->devid) < 11) {
+		data->hw_stride = 32768;
+	} else {
+		switch (data->modifier) {
+		case DRM_FORMAT_MOD_LINEAR:
+			data->hw_stride = 65536-64;
+			break;
+		default:
+			data->hw_stride = 65536;
+			break;
+		}
+	}
+}
+
 static data_t data;
 
 static const struct {
@@ -649,6 +679,8 @@ igt_main
 
 		data.bufmgr = drm_intel_bufmgr_gem_init(data.drm_fd, 4096);
 		data.batch = intel_batchbuffer_alloc(data.bufmgr, data.devid);
+
+		data.max_hw_stride_test = false;
 	}
 
 	/*
@@ -704,6 +736,55 @@ igt_main
 		}
 	}
 
+	data.max_hw_stride_test = true;
+	/*
+	 * Run max hw stride length tests on gen5 and later.
+	 */
+	for (int i = 0; i < ARRAY_SIZE(modifiers); i++) {
+		data.modifier = modifiers[i].modifier;
+
+		set_max_hw_stride(&data);
+
+		for (int j = 0; j < ARRAY_SIZE(formats); j++) {
+			/*
+			 * try only those formats which can show full lenght. 8K is
+			 * the magic maximum pixels in Intel HW. Here 32K is used
+			 * to have CI test results consistent for all platforms,
+			 * 32K is smallest number possbily coming to hw_stride
+			 * from above if{}else{}..
+			 */
+			if (32768 / (formats[j].bpp >> 3) > 8192)
+				continue;
+
+			data.format = formats[j].format;
+
+			for (int k = 0; k < ARRAY_SIZE(rotations); k++) {
+				data.rotation = rotations[k].rotation;
+				/*
+				 * Seems any format currently coming here will not support
+				 * 90/270 rotations so skip those rotations.
+				 */
+				if (data.rotation&(IGT_ROTATION_90|IGT_ROTATION_270))
+					continue;
+
+				igt_subtest_f("%s-max-hw-stride-%dbpp-rotate-%d", modifiers[i].name,
+					      formats[j].bpp, rotations[k].angle) {
+					igt_describe("test maximum hardware supported stride length for given bpp and modifiers.");
+					igt_require(intel_gen(intel_get_drm_devid(data.drm_fd)) >=5);
+					data.max_hw_fb_width = data.hw_stride / (formats[j].bpp >> 3);
+					igt_require(data.format == DRM_FORMAT_C8 ||
+						    igt_fb_supported_format(data.format));
+					igt_require(igt_display_has_format_mod(&data.display, data.format, data.modifier));
+					test_scanout(&data);
+				}
+			}
+
+			igt_fixture
+				cleanup_fb(&data);
+		}
+	}
+	data.max_hw_stride_test = false;
+
 	igt_fixture {
 		igt_display_fini(&data.display);
 
-- 
2.17.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] [PATCH i-g-t] tests/kms_big_fb: Add max HW stride length tests
@ 2020-03-19 18:03 Juha-Pekka Heikkila
  0 siblings, 0 replies; 15+ messages in thread
From: Juha-Pekka Heikkila @ 2020-03-19 18:03 UTC (permalink / raw)
  To: igt-dev

Test maximum HW stride lenghts. On Intel HW from gen5 up to
Gen10 maximum HW stride lenght is 32K. On Gen11 when using
64bpp formats strides can reach up to 64k. These test try
exact maximum HW strides so gtt remapping will not come in
play.

Signed-off-by: Juha-Pekka Heikkila <juhapekka.heikkila@gmail.com>
---
 tests/kms_big_fb.c | 86 ++++++++++++++++++++++++++++++++++++++++++++--
 1 file changed, 83 insertions(+), 3 deletions(-)

diff --git a/tests/kms_big_fb.c b/tests/kms_big_fb.c
index eb144da9..cf858a60 100644
--- a/tests/kms_big_fb.c
+++ b/tests/kms_big_fb.c
@@ -48,6 +48,9 @@ typedef struct {
 	igt_render_copyfunc_t render_copy;
 	drm_intel_bufmgr *bufmgr;
 	struct intel_batchbuffer *batch;
+	bool max_hw_stride_test;
+	int hw_stride;
+	int max_hw_fb_width;
 } data_t;
 
 static void init_buf(data_t *data,
@@ -163,9 +166,6 @@ static void max_fb_size(data_t *data, int *width, int *height,
 	uint64_t size;
 	int i = 0;
 
-	*width = data->max_fb_width;
-	*height = data->max_fb_height;
-
 	/* max fence stride is only 8k bytes on gen3 */
 	if (intel_gen(data->devid) < 4 &&
 	    format == DRM_FORMAT_XRGB8888)
@@ -419,6 +419,14 @@ static bool test_pipe(data_t *data)
 
 static void test_scanout(data_t *data)
 {
+	if (data->max_hw_stride_test) {
+		data->big_fb_width = data->max_hw_fb_width;
+		data->big_fb_height = data->max_hw_fb_width;
+	} else {
+		data->big_fb_width = data->max_fb_width;
+		data->big_fb_height = data->max_fb_height;
+	}
+
 	max_fb_size(data, &data->big_fb_width, &data->big_fb_height,
 		    data->format, data->modifier);
 
@@ -570,6 +578,28 @@ test_addfb(data_t *data)
 	gem_close(data->drm_fd, bo);
 }
 
+/*
+ * TODO: adapt i9xx_plane_max_stride(..) here from intel_display.c
+ * in kernel sources to support older gen for max hw stride length
+ * testing.
+ */
+static void
+set_max_hw_stride(data_t *data)
+{
+	if (intel_gen(data->devid) < 11) {
+		data->hw_stride = 32768;
+	} else {
+		switch (data->modifier) {
+		case DRM_FORMAT_MOD_LINEAR:
+			data->hw_stride = 65536-64;
+			break;
+		default:
+			data->hw_stride = 65536;
+			break;
+		}
+	}
+}
+
 static data_t data;
 
 static const struct {
@@ -649,6 +679,8 @@ igt_main
 
 		data.bufmgr = drm_intel_bufmgr_gem_init(data.drm_fd, 4096);
 		data.batch = intel_batchbuffer_alloc(data.bufmgr, data.devid);
+
+		data.max_hw_stride_test = false;
 	}
 
 	/*
@@ -704,6 +736,54 @@ igt_main
 		}
 	}
 
+	data.max_hw_stride_test = true;
+	/*
+	 * Run max hw stride length tests on gen5 and later.
+	 */
+	for (int i = 0; i < ARRAY_SIZE(modifiers); i++) {
+		data.modifier = modifiers[i].modifier;
+
+		set_max_hw_stride(&data);
+
+		for (int j = 0; j < ARRAY_SIZE(formats); j++) {
+			/*
+			 * try only those formats which can show full lenght. 8K is
+			 * the magic maximum pixels in Intel HW. Here 32K is used
+			 * to have CI test results consistent for all platforms,
+			 * 32K is smallest number possbily coming to hw_stride
+			 * from above if{}else{}..
+			 */
+			if (32768 / (formats[j].bpp >> 3) > 8192)
+				continue;
+
+			data.format = formats[j].format;
+
+			for (int k = 0; k < ARRAY_SIZE(rotations); k++) {
+				data.rotation = rotations[k].rotation;
+				/*
+				 * Seems any format currently coming here will not support
+				 * 90/270 rotations so skip those rotations.
+				 */
+				if (data.rotation&(IGT_ROTATION_90|IGT_ROTATION_270))
+					continue;
+
+				igt_subtest_f("%s-max-hw-stride-%dbpp-rotate-%d", modifiers[i].name,
+					      formats[j].bpp, rotations[k].angle) {
+					igt_require(intel_gen(intel_get_drm_devid(data.drm_fd)) >=5);
+					data.max_hw_fb_width = data.hw_stride / (formats[j].bpp >> 3);
+					igt_require(data.format == DRM_FORMAT_C8 ||
+						    igt_fb_supported_format(data.format));
+					igt_require(igt_display_has_format_mod(&data.display, data.format, data.modifier));
+					test_scanout(&data);
+				}
+			}
+
+			igt_fixture
+				cleanup_fb(&data);
+		}
+	}
+	data.max_hw_stride_test = false;
+
 	igt_fixture {
 		igt_display_fini(&data.display);
 
-- 
2.17.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

end of thread, other threads:[~2020-03-19 19:37 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-09-23 10:40 [igt-dev] [PATCH i-g-t] test longer than 32k strides Juha-Pekka Heikkila
2019-09-23 10:40 ` [igt-dev] [PATCH i-g-t] tests/kms_big_fb: Add over 32k HW stride tests Juha-Pekka Heikkila
2019-09-23 12:43   ` Ville Syrjälä
2019-09-27 13:43     ` Juha-Pekka Heikkila
2019-09-27 13:50       ` Ville Syrjälä
     [not found]   ` <1571904804-2248-1-git-send-email-juhapekka.heikkila@gmail.com>
2019-10-24 13:55     ` [igt-dev] [PATCH i-g-t] tests/kms_big_fb: Add max HW stride length tests Ville Syrjälä
2019-09-23 11:41 ` [igt-dev] ✗ GitLab.Pipeline: warning for tests/kms_big_fb: Add over 32k HW stride tests Patchwork
2019-09-23 11:45 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
2019-09-23 13:01 ` [igt-dev] ✗ GitLab.Pipeline: warning for tests/kms_big_fb: Add over 32k HW stride tests (rev2) Patchwork
2019-09-23 17:18 ` [igt-dev] ✓ Fi.CI.IGT: success for tests/kms_big_fb: Add over 32k HW stride tests Patchwork
2019-10-24  9:19 ` [igt-dev] ✗ GitLab.Pipeline: warning for tests/kms_big_fb: Add over 32k HW stride tests (rev3) Patchwork
2019-10-24  9:35 ` [igt-dev] ✓ Fi.CI.BAT: success " Patchwork
2019-10-25 10:46 ` [igt-dev] ✗ Fi.CI.IGT: failure " Patchwork
2020-03-19 18:03 [igt-dev] [PATCH i-g-t] tests/kms_big_fb: Add max HW stride length tests Juha-Pekka Heikkila
2020-03-19 19:36 Juha-Pekka Heikkila

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.