igt-dev.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
* [Intel-gfx] [PATCH i-g-t] igt/gem_mmap_gtt: Check for known incoherency before testing
@ 2018-07-20  8:07 Chris Wilson
  2018-07-20  8:44 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Chris Wilson @ 2018-07-20  8:07 UTC (permalink / raw)
  To: intel-gfx; +Cc: igt-dev

We test map_gtt coherency (whether or not a write via the mmap_gtt is
immediately visible in the backing storage to a read via mmap_cpu) but
we know that several platforms are inherently incorrect and require some
form of hammer to workaround internal delays. These platforms break our
ABI guarantees and so we report the change in ABI via a driver getparam.

If we know the platform doesn't meet the ABI guarantee, skip the test.
If it is meant to work, test!

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
---
 tests/gem_mmap_gtt.c | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/tests/gem_mmap_gtt.c b/tests/gem_mmap_gtt.c
index c8a0bedec..f63535556 100644
--- a/tests/gem_mmap_gtt.c
+++ b/tests/gem_mmap_gtt.c
@@ -309,6 +309,18 @@ test_write_gtt(int fd)
 	munmap(src, OBJECT_SIZE);
 }
 
+static bool is_coherent(int i915)
+{
+	int val = 1; /* by default, we assume GTT is coherent, hence the test */
+	struct drm_i915_getparam gp = {
+		gp.param = 52, /* GTT_COHERENT */
+		gp.value = &val,
+	};
+
+	ioctl(i915, DRM_IOCTL_I915_GETPARAM, &gp);
+	return val;
+}
+
 static void
 test_coherency(int fd)
 {
@@ -316,6 +328,7 @@ test_coherency(int fd)
 	uint32_t *gtt, *cpu;
 	int i;
 
+	igt_require(is_coherent(fd));
 	igt_require(igt_setup_clflush());
 
 	handle = gem_create(fd, OBJECT_SIZE);
-- 
2.18.0

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* [igt-dev] ✓ Fi.CI.BAT: success for igt/gem_mmap_gtt: Check for known incoherency before testing
  2018-07-20  8:07 [Intel-gfx] [PATCH i-g-t] igt/gem_mmap_gtt: Check for known incoherency before testing Chris Wilson
@ 2018-07-20  8:44 ` Patchwork
  2018-07-20 10:39 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
  2018-07-20 15:39 ` [Intel-gfx] [igt-dev] [PATCH i-g-t] " Tvrtko Ursulin
  2 siblings, 0 replies; 4+ messages in thread
From: Patchwork @ 2018-07-20  8:44 UTC (permalink / raw)
  To: Chris Wilson; +Cc: igt-dev

== Series Details ==

Series: igt/gem_mmap_gtt: Check for known incoherency before testing
URL   : https://patchwork.freedesktop.org/series/46917/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4517 -> IGTPW_1611 =

== Summary - SUCCESS ==

  No regressions found.

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


== Changes ==

  No changes found


== Participating hosts (47 -> 42) ==

  Missing    (5): fi-ctg-p8600 fi-ilk-m540 fi-byt-squawks fi-bsw-cyan fi-hsw-4200u 


== Build changes ==

    * IGT: IGT_4568 -> IGTPW_1611

  CI_DRM_4517: 2a25e5014e7b215f4261b6479ac29dabc2633484 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_1611: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1611/
  IGT_4568: 86f7b724ef18986bc58d35558d22e1ed3f8df4f9 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools

== Logs ==

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

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

* [igt-dev] ✓ Fi.CI.IGT: success for igt/gem_mmap_gtt: Check for known incoherency before testing
  2018-07-20  8:07 [Intel-gfx] [PATCH i-g-t] igt/gem_mmap_gtt: Check for known incoherency before testing Chris Wilson
  2018-07-20  8:44 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
@ 2018-07-20 10:39 ` Patchwork
  2018-07-20 15:39 ` [Intel-gfx] [igt-dev] [PATCH i-g-t] " Tvrtko Ursulin
  2 siblings, 0 replies; 4+ messages in thread
From: Patchwork @ 2018-07-20 10:39 UTC (permalink / raw)
  To: Chris Wilson; +Cc: igt-dev

== Series Details ==

Series: igt/gem_mmap_gtt: Check for known incoherency before testing
URL   : https://patchwork.freedesktop.org/series/46917/
State : success

== Summary ==

= CI Bug Log - changes from IGT_4568_full -> IGTPW_1611_full =

== Summary - WARNING ==

  Minor unknown changes coming with IGTPW_1611_full need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_1611_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://patchwork.freedesktop.org/api/1.0/series/46917/revisions/1/mbox/

== Possible new issues ==

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

  === IGT changes ===

    ==== Warnings ====

    igt@gem_mocs_settings@mocs-rc6-bsd1:
      shard-kbl:          PASS -> SKIP +1

    igt@gem_mocs_settings@mocs-rc6-ctx-render:
      shard-kbl:          SKIP -> PASS

    igt@gem_ppgtt@flink-and-close-vma-leak:
      shard-hsw:          SKIP -> PASS +2

    
== Known issues ==

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

  === IGT changes ===

    ==== Issues hit ====

    igt@gem_exec_parse@basic-allocation:
      shard-snb:          SKIP -> INCOMPLETE (fdo#105411)

    igt@kms_flip@plain-flip-ts-check:
      shard-glk:          PASS -> FAIL (fdo#100368)

    igt@kms_vblank@pipe-a-ts-continuation-suspend:
      shard-kbl:          PASS -> INCOMPLETE (fdo#103665)

    
    ==== Possible fixes ====

    igt@gem_exec_blt@normal-max:
      shard-snb:          INCOMPLETE (fdo#105411) -> PASS

    igt@kms_cursor_legacy@cursor-vs-flip-toggle:
      shard-hsw:          FAIL (fdo#103355) -> PASS

    igt@kms_flip@2x-plain-flip-fb-recreate:
      shard-glk:          FAIL (fdo#100368) -> PASS

    igt@kms_flip@flip-vs-expired-vblank:
      shard-glk:          FAIL (fdo#105363) -> PASS

    igt@kms_rotation_crc@sprite-rotation-180:
      shard-snb:          FAIL (fdo#103925) -> PASS

    igt@kms_setmode@basic:
      shard-apl:          FAIL (fdo#99912) -> PASS

    
  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#103355 https://bugs.freedesktop.org/show_bug.cgi?id=103355
  fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
  fdo#103925 https://bugs.freedesktop.org/show_bug.cgi?id=103925
  fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363
  fdo#105411 https://bugs.freedesktop.org/show_bug.cgi?id=105411
  fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912


== Participating hosts (5 -> 5) ==

  No changes in participating hosts


== Build changes ==

    * IGT: IGT_4568 -> IGTPW_1611
    * Linux: CI_DRM_4509 -> CI_DRM_4517

  CI_DRM_4509: e84aa0b47beed78a5a12db93e76fb00eab5db160 @ git://anongit.freedesktop.org/gfx-ci/linux
  CI_DRM_4517: 2a25e5014e7b215f4261b6479ac29dabc2633484 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_1611: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1611/
  IGT_4568: 86f7b724ef18986bc58d35558d22e1ed3f8df4f9 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools

== Logs ==

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

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

* Re: [Intel-gfx] [igt-dev] [PATCH i-g-t] igt/gem_mmap_gtt: Check for known incoherency before testing
  2018-07-20  8:07 [Intel-gfx] [PATCH i-g-t] igt/gem_mmap_gtt: Check for known incoherency before testing Chris Wilson
  2018-07-20  8:44 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
  2018-07-20 10:39 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
@ 2018-07-20 15:39 ` Tvrtko Ursulin
  2 siblings, 0 replies; 4+ messages in thread
From: Tvrtko Ursulin @ 2018-07-20 15:39 UTC (permalink / raw)
  To: Chris Wilson, intel-gfx; +Cc: igt-dev


On 20/07/2018 09:07, Chris Wilson wrote:
> We test map_gtt coherency (whether or not a write via the mmap_gtt is
> immediately visible in the backing storage to a read via mmap_cpu) but
> we know that several platforms are inherently incorrect and require some
> form of hammer to workaround internal delays. These platforms break our
> ABI guarantees and so we report the change in ABI via a driver getparam.
> 
> If we know the platform doesn't meet the ABI guarantee, skip the test.
> If it is meant to work, test!
> 
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> ---
>   tests/gem_mmap_gtt.c | 13 +++++++++++++
>   1 file changed, 13 insertions(+)
> 
> diff --git a/tests/gem_mmap_gtt.c b/tests/gem_mmap_gtt.c
> index c8a0bedec..f63535556 100644
> --- a/tests/gem_mmap_gtt.c
> +++ b/tests/gem_mmap_gtt.c
> @@ -309,6 +309,18 @@ test_write_gtt(int fd)
>   	munmap(src, OBJECT_SIZE);
>   }
>   
> +static bool is_coherent(int i915)
> +{
> +	int val = 1; /* by default, we assume GTT is coherent, hence the test */
> +	struct drm_i915_getparam gp = {
> +		gp.param = 52, /* GTT_COHERENT */
> +		gp.value = &val,
> +	};
> +
> +	ioctl(i915, DRM_IOCTL_I915_GETPARAM, &gp);
> +	return val;
> +}
> +
>   static void
>   test_coherency(int fd)
>   {
> @@ -316,6 +328,7 @@ test_coherency(int fd)
>   	uint32_t *gtt, *cpu;
>   	int i;
>   
> +	igt_require(is_coherent(fd));
>   	igt_require(igt_setup_clflush());
>   
>   	handle = gem_create(fd, OBJECT_SIZE);
> 

Reviewed-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com>

Regards,

Tvrtko
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

end of thread, other threads:[~2018-07-20 15:39 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-07-20  8:07 [Intel-gfx] [PATCH i-g-t] igt/gem_mmap_gtt: Check for known incoherency before testing Chris Wilson
2018-07-20  8:44 ` [igt-dev] ✓ Fi.CI.BAT: success for " Patchwork
2018-07-20 10:39 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2018-07-20 15:39 ` [Intel-gfx] [igt-dev] [PATCH i-g-t] " Tvrtko Ursulin

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).