All of lore.kernel.org
 help / color / mirror / Atom feed
* [igt-dev] [PATCH i-g-t v2] tests/gem_exec_basic: Quiesce GPU before returning from test
@ 2018-06-11 21:43 Antonio Argenziano
  2018-06-11 22:12 ` [igt-dev] ✓ Fi.CI.BAT: success for tests/gem_exec_basic: Quiesce GPU before returning from test (rev3) Patchwork
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Antonio Argenziano @ 2018-06-11 21:43 UTC (permalink / raw)
  To: igt-dev

All subtests send a workload to the engines and then return without
waiting on it, while this is not a problem because the test targets the
API, it makes the hang detector pointless since the driver will declare
an hang long after the test has completed.

v2:
	- Use common functions to create/terminate a batch (Chris)

Signed-off-by: Antonio Argenziano <antonio.argenziano@intel.com>
Cc: Chris Wilson <chris@chris-wilson.co.uk>
---
 tests/gem_exec_basic.c | 39 +++++++++++++++++++++++++++------------
 1 file changed, 27 insertions(+), 12 deletions(-)

diff --git a/tests/gem_exec_basic.c b/tests/gem_exec_basic.c
index 2f057ef0..dcb83864 100644
--- a/tests/gem_exec_basic.c
+++ b/tests/gem_exec_basic.c
@@ -25,37 +25,52 @@
 
 IGT_TEST_DESCRIPTION("Basic sanity check of execbuf-ioctl rings.");
 
+static uint32_t batch_create(int fd)
+{
+	const uint32_t bbe = MI_BATCH_BUFFER_END;
+	uint32_t handle;
+
+	handle = gem_create(fd, 4096);
+	gem_write(fd, handle, 0, &bbe, sizeof(bbe));
+
+	return handle;
+}
+
+static void batch_fini(int fd, uint32_t handle)
+{
+	gem_sync(fd, handle); /* catch any GPU hang */
+	gem_close(fd, handle);
+}
+
 static void noop(int fd, unsigned ring)
 {
-	uint32_t bbe = MI_BATCH_BUFFER_END;
 	struct drm_i915_gem_execbuffer2 execbuf;
 	struct drm_i915_gem_exec_object2 exec;
 
 	gem_require_ring(fd, ring);
 
 	memset(&exec, 0, sizeof(exec));
-	exec.handle = gem_create(fd, 4096);
-	gem_write(fd, exec.handle, 0, &bbe, sizeof(bbe));
+
+	exec.handle = batch_create(fd);
 
 	memset(&execbuf, 0, sizeof(execbuf));
 	execbuf.buffers_ptr = to_user_pointer(&exec);
 	execbuf.buffer_count = 1;
 	execbuf.flags = ring;
 	gem_execbuf(fd, &execbuf);
-	gem_close(fd, exec.handle);
+
+	batch_fini(fd, exec.handle);
 }
 
 static void readonly(int fd, unsigned ring)
 {
-	uint32_t bbe = MI_BATCH_BUFFER_END;
 	struct drm_i915_gem_execbuffer2 *execbuf;
 	struct drm_i915_gem_exec_object2 exec;
 
 	gem_require_ring(fd, ring);
 
 	memset(&exec, 0, sizeof(exec));
-	exec.handle = gem_create(fd, 4096);
-	gem_write(fd, exec.handle, 0, &bbe, sizeof(bbe));
+	exec.handle = batch_create(fd);
 
 	execbuf = mmap(NULL, 4096, PROT_WRITE, MAP_ANON | MAP_PRIVATE, -1, 0);
 	igt_assert(execbuf != NULL);
@@ -66,13 +81,14 @@ static void readonly(int fd, unsigned ring)
 	igt_assert(mprotect(execbuf, 4096, PROT_READ) == 0);
 
 	gem_execbuf(fd, execbuf);
+
 	munmap(execbuf, 4096);
-	gem_close(fd, exec.handle);
+
+	batch_fini(fd, exec.handle);
 }
 
 static void gtt(int fd, unsigned ring)
 {
-	uint32_t bbe = MI_BATCH_BUFFER_END;
 	struct drm_i915_gem_execbuffer2 *execbuf;
 	struct drm_i915_gem_exec_object2 *exec;
 	uint32_t handle;
@@ -86,16 +102,15 @@ static void gtt(int fd, unsigned ring)
 	exec = (struct drm_i915_gem_exec_object2 *)(execbuf + 1);
 	gem_close(fd, handle);
 
-	exec->handle = gem_create(fd, 4096);
-	gem_write(fd, exec->handle, 0, &bbe, sizeof(bbe));
+	exec->handle = batch_create(fd);
 
 	execbuf->buffers_ptr = to_user_pointer(exec);
 	execbuf->buffer_count = 1;
 	execbuf->flags = ring;
 
 	gem_execbuf(fd, execbuf);
-	gem_close(fd, exec->handle);
 
+	batch_fini(fd, exec->handle);
 	munmap(execbuf, 4096);
 }
 
-- 
2.16.2

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

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

* [igt-dev] ✓ Fi.CI.BAT: success for tests/gem_exec_basic: Quiesce GPU before returning from test (rev3)
  2018-06-11 21:43 [igt-dev] [PATCH i-g-t v2] tests/gem_exec_basic: Quiesce GPU before returning from test Antonio Argenziano
@ 2018-06-11 22:12 ` Patchwork
  2018-06-11 23:05 ` [igt-dev] [PATCH i-g-t v2] tests/gem_exec_basic: Quiesce GPU before returning from test Antonio Argenziano
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2018-06-11 22:12 UTC (permalink / raw)
  To: Chris Wilson; +Cc: igt-dev

== Series Details ==

Series: tests/gem_exec_basic: Quiesce GPU before returning from test (rev3)
URL   : https://patchwork.freedesktop.org/series/44590/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4302 -> IGTPW_1442 =

== Summary - WARNING ==

  Minor unknown changes coming with IGTPW_1442 need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_1442, 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/44590/revisions/3/mbox/

== Possible new issues ==

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

  === IGT changes ===

    ==== Warnings ====

    igt@gem_exec_gttfill@basic:
      fi-pnv-d510:        SKIP -> PASS

    igt@gem_mmap_gtt@basic-small-bo-tiledy:
      fi-gdg-551:         PASS -> SKIP

    
== Known issues ==

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

  === IGT changes ===

    ==== Issues hit ====

    igt@gem_mmap@basic-small-bo:
      fi-glk-j4005:       PASS -> DMESG-WARN (fdo#106000)

    igt@kms_flip@basic-flip-vs-modeset:
      fi-bxt-dsi:         PASS -> INCOMPLETE (fdo#103927)

    
    ==== Possible fixes ====

    igt@gem_mmap_gtt@basic-small-bo-tiledx:
      fi-gdg-551:         FAIL (fdo#102575) -> SKIP

    igt@kms_pipe_crc_basic@read-crc-pipe-b-frame-sequence:
      fi-glk-j4005:       FAIL (fdo#103481) -> PASS

    igt@kms_pipe_crc_basic@read-crc-pipe-c:
      fi-glk-j4005:       DMESG-WARN (fdo#106000, fdo#106097) -> PASS

    igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
      fi-cnl-psr:         DMESG-WARN (fdo#104951) -> PASS

    
  fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575
  fdo#103481 https://bugs.freedesktop.org/show_bug.cgi?id=103481
  fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927
  fdo#104951 https://bugs.freedesktop.org/show_bug.cgi?id=104951
  fdo#106000 https://bugs.freedesktop.org/show_bug.cgi?id=106000
  fdo#106097 https://bugs.freedesktop.org/show_bug.cgi?id=106097


== Participating hosts (41 -> 37) ==

  Additional (1): fi-bdw-gvtdvm 
  Missing    (5): fi-ctg-p8600 fi-ilk-m540 fi-byt-squawks fi-bsw-cyan fi-skl-6700hq 


== Build changes ==

    * IGT: IGT_4513 -> IGTPW_1442

  CI_DRM_4302: ef129f260b2bd362959651fe8e20e369bf3c977e @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_1442: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1442/
  IGT_4513: 7b6838781441cfbc7f6c18f421f127dfb02b44cf @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools

== Logs ==

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

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

* Re: [igt-dev] [PATCH i-g-t v2] tests/gem_exec_basic: Quiesce GPU before returning from test
  2018-06-11 21:43 [igt-dev] [PATCH i-g-t v2] tests/gem_exec_basic: Quiesce GPU before returning from test Antonio Argenziano
  2018-06-11 22:12 ` [igt-dev] ✓ Fi.CI.BAT: success for tests/gem_exec_basic: Quiesce GPU before returning from test (rev3) Patchwork
@ 2018-06-11 23:05 ` Antonio Argenziano
  2018-06-12  4:03 ` [igt-dev] ✗ Fi.CI.IGT: failure for tests/gem_exec_basic: Quiesce GPU before returning from test (rev3) Patchwork
  2018-06-12  7:21 ` [igt-dev] [PATCH i-g-t v2] tests/gem_exec_basic: Quiesce GPU before returning from test Chris Wilson
  3 siblings, 0 replies; 6+ messages in thread
From: Antonio Argenziano @ 2018-06-11 23:05 UTC (permalink / raw)
  To: igt-dev

Maybe change the title to "Wait on outstanding work before returning 
from test"?

Thanks,
Antonio

On 11/06/18 14:43, Antonio Argenziano wrote:
> All subtests send a workload to the engines and then return without
> waiting on it, while this is not a problem because the test targets the
> API, it makes the hang detector pointless since the driver will declare
> an hang long after the test has completed.
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* [igt-dev] ✗ Fi.CI.IGT: failure for tests/gem_exec_basic: Quiesce GPU before returning from test (rev3)
  2018-06-11 21:43 [igt-dev] [PATCH i-g-t v2] tests/gem_exec_basic: Quiesce GPU before returning from test Antonio Argenziano
  2018-06-11 22:12 ` [igt-dev] ✓ Fi.CI.BAT: success for tests/gem_exec_basic: Quiesce GPU before returning from test (rev3) Patchwork
  2018-06-11 23:05 ` [igt-dev] [PATCH i-g-t v2] tests/gem_exec_basic: Quiesce GPU before returning from test Antonio Argenziano
@ 2018-06-12  4:03 ` Patchwork
  2018-06-12  7:21 ` [igt-dev] [PATCH i-g-t v2] tests/gem_exec_basic: Quiesce GPU before returning from test Chris Wilson
  3 siblings, 0 replies; 6+ messages in thread
From: Patchwork @ 2018-06-12  4:03 UTC (permalink / raw)
  To: Chris Wilson; +Cc: igt-dev

== Series Details ==

Series: tests/gem_exec_basic: Quiesce GPU before returning from test (rev3)
URL   : https://patchwork.freedesktop.org/series/44590/
State : failure

== Summary ==

= CI Bug Log - changes from IGT_4513_full -> IGTPW_1442_full =

== Summary - FAILURE ==

  Serious unknown changes coming with IGTPW_1442_full absolutely need to be
  verified manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in IGTPW_1442_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/44590/revisions/3/mbox/

== Possible new issues ==

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

  === IGT changes ===

    ==== Possible regressions ====

    igt@drv_selftest@live_hangcheck:
      shard-kbl:          PASS -> DMESG-FAIL

    
    ==== Warnings ====

    igt@gem_exec_schedule@deep-blt:
      shard-kbl:          SKIP -> PASS +2

    igt@gem_mocs_settings@mocs-rc6-vebox:
      shard-kbl:          PASS -> SKIP +3

    
== Known issues ==

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

  === IGT changes ===

    ==== Issues hit ====

    igt@drv_selftest@live_gtt:
      shard-kbl:          PASS -> FAIL (fdo#105347)

    igt@kms_flip@dpms-vs-vblank-race:
      shard-hsw:          PASS -> FAIL (fdo#103060)

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

    igt@kms_flip_tiling@flip-y-tiled:
      shard-glk:          PASS -> FAIL (fdo#104724)

    igt@kms_frontbuffer_tracking@fbc-stridechange:
      shard-snb:          PASS -> INCOMPLETE (fdo#105411)

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

    igt@testdisplay:
      shard-glk:          PASS -> INCOMPLETE (k.org#198133, fdo#103359)

    
    ==== Possible fixes ====

    igt@drv_suspend@shrink:
      shard-glk:          INCOMPLETE (k.org#198133, fdo#103359) -> PASS

    igt@gem_exec_big:
      shard-hsw:          INCOMPLETE (fdo#103540) -> PASS

    igt@kms_cursor_legacy@2x-nonblocking-modeset-vs-cursor-atomic:
      shard-glk:          FAIL (fdo#105454, fdo#106509) -> PASS

    igt@kms_flip@2x-flip-vs-blocking-wf-vblank:
      shard-glk:          FAIL (fdo#100368) -> PASS

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

    igt@kms_flip_tiling@flip-x-tiled:
      shard-glk:          FAIL (fdo#104724) -> PASS

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

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

    igt@perf@polling:
      shard-hsw:          FAIL (fdo#102252) -> PASS

    
    ==== Warnings ====

    igt@drv_selftest@live_gtt:
      shard-glk:          FAIL (fdo#105347) -> INCOMPLETE (k.org#198133, fdo#103359)

    igt@gem_eio@suspend:
      shard-snb:          FAIL (fdo#105957) -> INCOMPLETE (fdo#105411)

    
  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#102252 https://bugs.freedesktop.org/show_bug.cgi?id=102252
  fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060
  fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
  fdo#103540 https://bugs.freedesktop.org/show_bug.cgi?id=103540
  fdo#103925 https://bugs.freedesktop.org/show_bug.cgi?id=103925
  fdo#104724 https://bugs.freedesktop.org/show_bug.cgi?id=104724
  fdo#105347 https://bugs.freedesktop.org/show_bug.cgi?id=105347
  fdo#105411 https://bugs.freedesktop.org/show_bug.cgi?id=105411
  fdo#105454 https://bugs.freedesktop.org/show_bug.cgi?id=105454
  fdo#105957 https://bugs.freedesktop.org/show_bug.cgi?id=105957
  fdo#106509 https://bugs.freedesktop.org/show_bug.cgi?id=106509
  fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912
  k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133


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

  No changes in participating hosts


== Build changes ==

    * IGT: IGT_4513 -> IGTPW_1442
    * Linux: CI_DRM_4294 -> CI_DRM_4302

  CI_DRM_4294: af0889384edc6de2f91494325d571c66dffea83f @ git://anongit.freedesktop.org/gfx-ci/linux
  CI_DRM_4302: ef129f260b2bd362959651fe8e20e369bf3c977e @ git://anongit.freedesktop.org/gfx-ci/linux
  IGTPW_1442: https://intel-gfx-ci.01.org/tree/drm-tip/IGTPW_1442/
  IGT_4513: 7b6838781441cfbc7f6c18f421f127dfb02b44cf @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools

== Logs ==

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

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

* Re: [igt-dev] [PATCH i-g-t v2] tests/gem_exec_basic: Quiesce GPU before returning from test
  2018-06-11 21:43 [igt-dev] [PATCH i-g-t v2] tests/gem_exec_basic: Quiesce GPU before returning from test Antonio Argenziano
                   ` (2 preceding siblings ...)
  2018-06-12  4:03 ` [igt-dev] ✗ Fi.CI.IGT: failure for tests/gem_exec_basic: Quiesce GPU before returning from test (rev3) Patchwork
@ 2018-06-12  7:21 ` Chris Wilson
  2018-06-12 16:05   ` Antonio Argenziano
  3 siblings, 1 reply; 6+ messages in thread
From: Chris Wilson @ 2018-06-12  7:21 UTC (permalink / raw)
  To: Antonio Argenziano, igt-dev

Quoting Antonio Argenziano (2018-06-11 22:43:43)
> All subtests send a workload to the engines and then return without
> waiting on it, while this is not a problem because the test targets the
> API, it makes the hang detector pointless since the driver will declare
> an hang long after the test has completed.
> 
> v2:
>         - Use common functions to create/terminate a batch (Chris)
> 
> Signed-off-by: Antonio Argenziano <antonio.argenziano@intel.com>
> Cc: Chris Wilson <chris@chris-wilson.co.uk>

Whatever you want to call it,
Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
-Chris
_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

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

* Re: [igt-dev] [PATCH i-g-t v2] tests/gem_exec_basic: Quiesce GPU before returning from test
  2018-06-12  7:21 ` [igt-dev] [PATCH i-g-t v2] tests/gem_exec_basic: Quiesce GPU before returning from test Chris Wilson
@ 2018-06-12 16:05   ` Antonio Argenziano
  0 siblings, 0 replies; 6+ messages in thread
From: Antonio Argenziano @ 2018-06-12 16:05 UTC (permalink / raw)
  To: Chris Wilson, igt-dev



On 12/06/18 00:21, Chris Wilson wrote:
> Quoting Antonio Argenziano (2018-06-11 22:43:43)
>> All subtests send a workload to the engines and then return without
>> waiting on it, while this is not a problem because the test targets the
>> API, it makes the hang detector pointless since the driver will declare
>> an hang long after the test has completed.
>>
>> v2:
>>          - Use common functions to create/terminate a batch (Chris)
>>
>> Signed-off-by: Antonio Argenziano <antonio.argenziano@intel.com>
>> Cc: Chris Wilson <chris@chris-wilson.co.uk>
> 
> Whatever you want to call it,
> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>

Pushed, thanks for the review.

Antonio.

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

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

end of thread, other threads:[~2018-06-12 16:05 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-11 21:43 [igt-dev] [PATCH i-g-t v2] tests/gem_exec_basic: Quiesce GPU before returning from test Antonio Argenziano
2018-06-11 22:12 ` [igt-dev] ✓ Fi.CI.BAT: success for tests/gem_exec_basic: Quiesce GPU before returning from test (rev3) Patchwork
2018-06-11 23:05 ` [igt-dev] [PATCH i-g-t v2] tests/gem_exec_basic: Quiesce GPU before returning from test Antonio Argenziano
2018-06-12  4:03 ` [igt-dev] ✗ Fi.CI.IGT: failure for tests/gem_exec_basic: Quiesce GPU before returning from test (rev3) Patchwork
2018-06-12  7:21 ` [igt-dev] [PATCH i-g-t v2] tests/gem_exec_basic: Quiesce GPU before returning from test Chris Wilson
2018-06-12 16:05   ` Antonio Argenziano

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.