All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/i915/selftests: Fix error checking for wait_var_timeout
@ 2018-04-17 17:06 Chris Wilson
  2018-04-17 17:31 ` ✓ Fi.CI.BAT: success for " Patchwork
                   ` (7 more replies)
  0 siblings, 8 replies; 12+ messages in thread
From: Chris Wilson @ 2018-04-17 17:06 UTC (permalink / raw)
  To: intel-gfx

The old wait_on_atomic_t used a custom callback to perform the
schedule(), which used my return semantics of reporting an error code on
timeout. wait_var_event_timeout() uses the schedule() return semantics
of reporting the remaining jiffies (1 if it timed out with 0 jiffies
remaining!) and 0 on failure. This semantic mismatch lead to us falsely
claiming a time out occurred.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106085
Fixes: d224985a5e31 ("sched/wait, drivers/drm: Convert wait_on_atomic_t() usage to the new wait_var_event() API")
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
---
 drivers/gpu/drm/i915/selftests/intel_breadcrumbs.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/selftests/intel_breadcrumbs.c b/drivers/gpu/drm/i915/selftests/intel_breadcrumbs.c
index 46580026c7fc..d6926e7820e5 100644
--- a/drivers/gpu/drm/i915/selftests/intel_breadcrumbs.c
+++ b/drivers/gpu/drm/i915/selftests/intel_breadcrumbs.c
@@ -412,10 +412,11 @@ static int igt_wakeup(void *arg)
 		 * that they are ready for the next test. We wait until all
 		 * threads are complete and waiting for us (i.e. not a seqno).
 		 */
-		err = wait_var_event_timeout(&done, !atomic_read(&done), 10 * HZ);
-		if (err) {
+		if (!wait_var_event_timeout(&done,
+					    !atomic_read(&done), 10 * HZ)) {
 			pr_err("Timed out waiting for %d remaining waiters\n",
 			       atomic_read(&done));
+			err = -ETIMEDOUT;
 			break;
 		}
 
-- 
2.17.0

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

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

* ✓ Fi.CI.BAT: success for drm/i915/selftests: Fix error checking for wait_var_timeout
  2018-04-17 17:06 [PATCH] drm/i915/selftests: Fix error checking for wait_var_timeout Chris Wilson
@ 2018-04-17 17:31 ` Patchwork
  2018-04-17 17:47 ` ✓ Fi.CI.IGT: " Patchwork
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 12+ messages in thread
From: Patchwork @ 2018-04-17 17:31 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915/selftests: Fix error checking for wait_var_timeout
URL   : https://patchwork.freedesktop.org/series/41835/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4059 -> Patchwork_8710 =

== Summary - WARNING ==

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

== Possible new issues ==

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

  === IGT changes ===

    ==== Warnings ====

    igt@core_auth@basic-auth:
      fi-kbl-r:           PASS -> NOTRUN +257

    igt@drv_getparams_basic@basic-subslice-total:
      fi-snb-2600:        PASS -> NOTRUN +244

    igt@drv_hangman@error-state-basic:
      fi-elk-e7500:       PASS -> NOTRUN +181

    igt@gem_busy@basic-busy-default:
      fi-glk-j4005:       PASS -> NOTRUN +255

    igt@gem_close_race@basic-process:
      fi-ivb-3770:        PASS -> NOTRUN +251

    igt@gem_ctx_param@basic:
      fi-gdg-551:         SKIP -> NOTRUN +107

    igt@gem_exec_basic@basic-bsd1:
      fi-cfl-u:           SKIP -> NOTRUN +25

    igt@gem_exec_basic@basic-vebox:
      fi-ivb-3770:        SKIP -> NOTRUN +32

    igt@gem_exec_basic@gtt-bsd:
      fi-bwr-2160:        SKIP -> NOTRUN +104

    igt@gem_exec_basic@gtt-bsd2:
      fi-kbl-7500u:       SKIP -> NOTRUN +23
      fi-cnl-y3:          SKIP -> NOTRUN +25

    igt@gem_exec_basic@readonly-bsd:
      fi-pnv-d510:        SKIP -> NOTRUN +63

    igt@gem_exec_basic@readonly-bsd1:
      fi-snb-2520m:       SKIP -> NOTRUN +39

    igt@gem_exec_flush@basic-batch-kernel-default-cmd:
      fi-bxt-dsi:         SKIP -> NOTRUN +29

    igt@gem_exec_flush@basic-batch-kernel-default-wb:
      fi-kbl-7567u:       PASS -> NOTRUN +264

    igt@gem_exec_flush@basic-uc-rw-default:
      fi-byt-j1900:       PASS -> NOTRUN +249

    igt@gem_exec_gttfill@basic:
      fi-skl-gvtdvm:      SKIP -> NOTRUN +22

    igt@gem_exec_reloc@basic-cpu-active:
      fi-bsw-n3050:       PASS -> NOTRUN +238

    igt@gem_exec_reloc@basic-write-cpu-noreloc:
      fi-skl-6770hq:      PASS -> NOTRUN +264

    igt@gem_exec_reloc@basic-write-gtt-noreloc:
      fi-ivb-3520m:       PASS -> NOTRUN +253

    igt@gem_exec_store@basic-bsd1:
      fi-kbl-r:           SKIP -> NOTRUN +26

    igt@gem_exec_store@basic-bsd2:
      fi-hsw-4770:        SKIP -> NOTRUN +26

    igt@gem_flink_basic@basic:
      fi-gdg-551:         PASS -> NOTRUN +175

    igt@gem_mmap@basic-small-bo:
      fi-skl-gvtdvm:      PASS -> NOTRUN +261

    igt@gem_mmap_gtt@basic-read:
      fi-cnl-y3:          PASS -> NOTRUN +258

    igt@gem_mmap_gtt@basic-read-write-distinct:
      fi-hsw-4770:        PASS -> NOTRUN +257

    igt@gem_mmap_gtt@basic-small-bo:
      fi-kbl-7500u:       PASS -> NOTRUN +259

    igt@gem_mmap_gtt@basic-wc:
      fi-pnv-d510:        PASS -> NOTRUN +219

    igt@gem_mmap_gtt@basic-write:
      fi-cfl-8700k:       PASS -> NOTRUN +256

    igt@gem_mmap_gtt@basic-write-gtt:
      fi-blb-e6850:       PASS -> NOTRUN +219

    igt@gem_ringfill@basic-default-fd:
      fi-elk-e7500:       SKIP -> NOTRUN +46

    igt@gem_sync@basic-store-all:
      fi-byt-n2820:       PASS -> NOTRUN +245

    igt@gem_wait@basic-await-all:
      fi-glk-1:           PASS -> NOTRUN +256

    igt@gem_workarounds@basic-read:
      fi-snb-2600:        SKIP -> NOTRUN +39

    igt@gvt_basic@invalid-placeholder-test:
      fi-skl-6260u:       SKIP -> NOTRUN +19

    igt@kms_addfb_basic@addfb25-bad-modifier:
      fi-bdw-gvtdvm:      PASS -> NOTRUN +260

    igt@kms_addfb_basic@too-high:
      fi-bwr-2160:        PASS -> NOTRUN +179

    igt@kms_addfb_basic@unused-modifier:
      fi-bdw-5557u:       PASS -> NOTRUN +263

    igt@kms_chamelium@common-hpd-after-suspend:
      fi-ivb-3520m:       SKIP -> NOTRUN +28

    igt@kms_chamelium@dp-crc-fast:
      fi-skl-guc:         SKIP -> NOTRUN +27

    igt@kms_chamelium@dp-edid-read:
      fi-skl-6770hq:      SKIP -> NOTRUN +19
      fi-byt-n2820:       SKIP -> NOTRUN +38

    igt@kms_chamelium@dp-hpd-fast:
      fi-ilk-650:         SKIP -> NOTRUN +59

    igt@kms_chamelium@hdmi-crc-fast:
      fi-cfl-s3:          SKIP -> NOTRUN +25
      fi-bsw-n3050:       SKIP -> NOTRUN +45
      fi-byt-j1900:       SKIP -> NOTRUN +34

    igt@kms_chamelium@hdmi-edid-read:
      fi-glk-1:           SKIP -> NOTRUN +27
      fi-blb-e6850:       SKIP -> NOTRUN +63

    igt@kms_chamelium@vga-edid-read:
      fi-cfl-8700k:       SKIP -> NOTRUN +27
      fi-skl-6600u:       SKIP -> NOTRUN +26

    igt@kms_flip@basic-flip-vs-dpms:
      fi-ilk-650:         PASS -> NOTRUN +224

    igt@kms_flip@basic-plain-flip:
      fi-bxt-j4205:       PASS -> NOTRUN +255

    igt@kms_force_connector_basic@force-connector-state:
      fi-kbl-7567u:       SKIP -> NOTRUN +19

    igt@kms_force_connector_basic@prune-stale-modes:
      fi-glk-j4005:       SKIP -> NOTRUN +28
      fi-skl-6700k2:      SKIP -> NOTRUN +23

    igt@kms_pipe_crc_basic@read-crc-pipe-a-frame-sequence:
      fi-skl-6600u:       PASS -> NOTRUN +257

    igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
      fi-snb-2520m:       PASS -> NOTRUN +244

    igt@kms_sink_crc_basic:
      fi-bdw-gvtdvm:      SKIP -> NOTRUN +23

    igt@pm_backlight@basic-brightness:
      fi-bxt-j4205:       SKIP -> NOTRUN +28
      fi-bdw-5557u:       SKIP -> NOTRUN +20

    igt@pm_rpm@basic-rte:
      fi-skl-6260u:       PASS -> NOTRUN +264

    igt@prime_self_import@basic-llseek-bad:
      fi-skl-guc:         PASS -> NOTRUN +256

    igt@prime_self_import@basic-with_two_bos:
      fi-bxt-dsi:         PASS -> NOTRUN +254

    igt@prime_vgem@basic-busy-default:
      fi-cfl-u:           PASS -> NOTRUN +258

    igt@vgem_basic@create:
      fi-cfl-s3:          PASS -> NOTRUN +258

    igt@vgem_basic@mmap:
      fi-skl-6700k2:      PASS -> NOTRUN +260

    
== Known issues ==

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

  === IGT changes ===

    ==== Possible fixes ====

    igt@gem_exec_suspend@basic-s3:
      fi-ivb-3520m:       DMESG-WARN (fdo#106084) -> NOTRUN +1

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

    igt@gem_ringfill@basic-default-hang:
      fi-pnv-d510:        DMESG-WARN (fdo#101600) -> NOTRUN
      fi-blb-e6850:       DMESG-WARN (fdo#101600) -> NOTRUN

    igt@kms_chamelium@common-hpd-after-suspend:
      fi-kbl-7500u:       DMESG-WARN (fdo#102505) -> NOTRUN

    igt@kms_pipe_crc_basic@nonblocking-crc-pipe-a-frame-sequence:
      fi-elk-e7500:       INCOMPLETE (fdo#103989) -> NOTRUN

    
  fdo#101600 https://bugs.freedesktop.org/show_bug.cgi?id=101600
  fdo#102505 https://bugs.freedesktop.org/show_bug.cgi?id=102505
  fdo#102575 https://bugs.freedesktop.org/show_bug.cgi?id=102575
  fdo#103989 https://bugs.freedesktop.org/show_bug.cgi?id=103989
  fdo#106084 https://bugs.freedesktop.org/show_bug.cgi?id=106084


== Participating hosts (36 -> 33) ==

  Missing    (3): fi-ctg-p8600 fi-ilk-m540 fi-skl-6700hq 


== Build changes ==

    * Linux: CI_DRM_4059 -> Patchwork_8710

  CI_DRM_4059: c1645edc253f2b52a8c94565a75b479a6782e75f @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4435: ddbe5a4d8bb1780ecf07f72e815062d3bce8ff71 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_8710: 31ed4f77481f05424db6032698f73ee08b0b3f3b @ git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4435: e60d247eb359f044caf0c09904da14e39d7adca1 @ git://anongit.freedesktop.org/piglit


== Linux commits ==

31ed4f77481f drm/i915/selftests: Fix error checking for wait_var_timeout

== Logs ==

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

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

* ✓ Fi.CI.IGT: success for drm/i915/selftests: Fix error checking for wait_var_timeout
  2018-04-17 17:06 [PATCH] drm/i915/selftests: Fix error checking for wait_var_timeout Chris Wilson
  2018-04-17 17:31 ` ✓ Fi.CI.BAT: success for " Patchwork
@ 2018-04-17 17:47 ` Patchwork
  2018-04-18  9:10 ` [PATCH] " Joonas Lahtinen
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 12+ messages in thread
From: Patchwork @ 2018-04-17 17:47 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915/selftests: Fix error checking for wait_var_timeout
URL   : https://patchwork.freedesktop.org/series/41835/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4059_full -> Patchwork_8710_full =

== Summary - WARNING ==

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

== Possible new issues ==

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

  === IGT changes ===

    ==== Warnings ====

    igt@gem_busy@extended-parallel-bsd1:
      shard-hsw:          SKIP -> NOTRUN +890

    igt@gem_exec_params@dr1-dirt:
      shard-kbl:          PASS -> NOTRUN +1940

    igt@gem_pread@stolen-uncached:
      shard-kbl:          SKIP -> NOTRUN +700

    igt@gem_pwrite@display:
      shard-snb:          PASS -> NOTRUN +1377

    igt@kms_chv_cursor_fail@pipe-b-256x256-top-edge:
      shard-hsw:          PASS -> NOTRUN +1783

    igt@kms_rotation_crc@sprite-rotation-90-pos-100-0:
      shard-apl:          PASS -> NOTRUN +1834

    igt@perf_pmu@busy-start-vcs1:
      shard-snb:          SKIP -> NOTRUN +1298

    igt@prime_vgem@sync-bsd1:
      shard-apl:          SKIP -> NOTRUN +835

    
== Known issues ==

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

  === IGT changes ===

    ==== Possible fixes ====

    igt@drv_selftest@mock_breadcrumbs:
      shard-hsw:          DMESG-FAIL (fdo#106085) -> NOTRUN
      shard-snb:          DMESG-FAIL (fdo#106085) -> NOTRUN
      shard-apl:          DMESG-FAIL (fdo#106085) -> NOTRUN
      shard-kbl:          DMESG-FAIL (fdo#106085) -> NOTRUN

    igt@drv_selftest@mock_scatterlist:
      shard-hsw:          DMESG-WARN (fdo#103667) -> NOTRUN
      shard-kbl:          DMESG-WARN (fdo#103667) -> NOTRUN
      shard-snb:          DMESG-WARN (fdo#103667) -> NOTRUN
      shard-apl:          DMESG-WARN (fdo#103667) -> NOTRUN

    igt@gem_ctx_isolation@vcs0-s3:
      shard-kbl:          INCOMPLETE (fdo#103665) -> NOTRUN

    igt@gem_exec_schedule@pi-ringfull-blt:
      shard-apl:          FAIL (fdo#103158) -> NOTRUN +3

    igt@gem_exec_schedule@pi-ringfull-bsd1:
      shard-kbl:          FAIL (fdo#103158) -> NOTRUN +4

    igt@kms_flip@2x-flip-vs-expired-vblank:
      shard-hsw:          FAIL (fdo#102887) -> NOTRUN

    igt@kms_flip@flip-vs-expired-vblank-interruptible:
      shard-apl:          FAIL (fdo#105363, fdo#102887) -> NOTRUN

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

    igt@kms_frontbuffer_tracking@fbc-1p-pri-indfb-multidraw:
      shard-snb:          FAIL (fdo#103167) -> NOTRUN

    igt@kms_setmode@basic:
      shard-apl:          FAIL (fdo#99912) -> NOTRUN
      shard-hsw:          FAIL (fdo#99912) -> NOTRUN
      shard-snb:          FAIL (fdo#99912) -> NOTRUN

    igt@kms_sysfs_edid_timing:
      shard-hsw:          WARN (fdo#100047) -> NOTRUN
      shard-kbl:          FAIL (fdo#100047) -> NOTRUN

    igt@prime_vgem@coherency-gtt:
      shard-apl:          FAIL (fdo#100587) -> NOTRUN +1

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

  fdo#100047 https://bugs.freedesktop.org/show_bug.cgi?id=100047
  fdo#100587 https://bugs.freedesktop.org/show_bug.cgi?id=100587
  fdo#102887 https://bugs.freedesktop.org/show_bug.cgi?id=102887
  fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060
  fdo#103158 https://bugs.freedesktop.org/show_bug.cgi?id=103158
  fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
  fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
  fdo#103667 https://bugs.freedesktop.org/show_bug.cgi?id=103667
  fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363
  fdo#106085 https://bugs.freedesktop.org/show_bug.cgi?id=106085
  fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912


== Participating hosts (6 -> 4) ==

  Missing    (2): shard-glk shard-glkb 


== Build changes ==

    * Linux: CI_DRM_4059 -> Patchwork_8710

  CI_DRM_4059: c1645edc253f2b52a8c94565a75b479a6782e75f @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4435: ddbe5a4d8bb1780ecf07f72e815062d3bce8ff71 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_8710: 31ed4f77481f05424db6032698f73ee08b0b3f3b @ git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4435: e60d247eb359f044caf0c09904da14e39d7adca1 @ git://anongit.freedesktop.org/piglit

== Logs ==

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

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

* Re: [PATCH] drm/i915/selftests: Fix error checking for wait_var_timeout
  2018-04-17 17:06 [PATCH] drm/i915/selftests: Fix error checking for wait_var_timeout Chris Wilson
  2018-04-17 17:31 ` ✓ Fi.CI.BAT: success for " Patchwork
  2018-04-17 17:47 ` ✓ Fi.CI.IGT: " Patchwork
@ 2018-04-18  9:10 ` Joonas Lahtinen
  2018-04-18  9:14   ` Chris Wilson
  2018-04-18 10:18 ` ✓ Fi.CI.BAT: success for " Patchwork
                   ` (4 subsequent siblings)
  7 siblings, 1 reply; 12+ messages in thread
From: Joonas Lahtinen @ 2018-04-18  9:10 UTC (permalink / raw)
  To: Chris Wilson, intel-gfx

Quoting Chris Wilson (2018-04-17 20:06:38)
> The old wait_on_atomic_t used a custom callback to perform the
> schedule(), which used my return semantics of reporting an error code on
> timeout. wait_var_event_timeout() uses the schedule() return semantics
> of reporting the remaining jiffies (1 if it timed out with 0 jiffies
> remaining!) and 0 on failure. This semantic mismatch lead to us falsely
> claiming a time out occurred.
> 
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106085
> Fixes: d224985a5e31 ("sched/wait, drivers/drm: Convert wait_on_atomic_t() usage to the new wait_var_event() API")
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>

Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>

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

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

* Re: [PATCH] drm/i915/selftests: Fix error checking for wait_var_timeout
  2018-04-18  9:10 ` [PATCH] " Joonas Lahtinen
@ 2018-04-18  9:14   ` Chris Wilson
  2018-04-18 10:11     ` Joonas Lahtinen
  0 siblings, 1 reply; 12+ messages in thread
From: Chris Wilson @ 2018-04-18  9:14 UTC (permalink / raw)
  To: Joonas Lahtinen, intel-gfx

Quoting Joonas Lahtinen (2018-04-18 10:10:17)
> Quoting Chris Wilson (2018-04-17 20:06:38)
> > The old wait_on_atomic_t used a custom callback to perform the
> > schedule(), which used my return semantics of reporting an error code on
> > timeout. wait_var_event_timeout() uses the schedule() return semantics
> > of reporting the remaining jiffies (1 if it timed out with 0 jiffies
> > remaining!) and 0 on failure. This semantic mismatch lead to us falsely
> > claiming a time out occurred.
> > 
> > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106085
> > Fixes: d224985a5e31 ("sched/wait, drivers/drm: Convert wait_on_atomic_t() usage to the new wait_var_event() API")
> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> 
> Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>

How about a backmerge of rc1 onto drm-intel-next-queued so we can apply
the fix?
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [PATCH] drm/i915/selftests: Fix error checking for wait_var_timeout
  2018-04-18  9:14   ` Chris Wilson
@ 2018-04-18 10:11     ` Joonas Lahtinen
  0 siblings, 0 replies; 12+ messages in thread
From: Joonas Lahtinen @ 2018-04-18 10:11 UTC (permalink / raw)
  To: Chris Wilson, intel-gfx, Jani Nikula

Quoting Chris Wilson (2018-04-18 12:14:15)
> Quoting Joonas Lahtinen (2018-04-18 10:10:17)
> > Quoting Chris Wilson (2018-04-17 20:06:38)
> > > The old wait_on_atomic_t used a custom callback to perform the
> > > schedule(), which used my return semantics of reporting an error code on
> > > timeout. wait_var_event_timeout() uses the schedule() return semantics
> > > of reporting the remaining jiffies (1 if it timed out with 0 jiffies
> > > remaining!) and 0 on failure. This semantic mismatch lead to us falsely
> > > claiming a time out occurred.
> > > 
> > > Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106085
> > > Fixes: d224985a5e31 ("sched/wait, drivers/drm: Convert wait_on_atomic_t() usage to the new wait_var_event() API")
> > > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > 
> > Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
> 
> How about a backmerge of rc1 onto drm-intel-next-queued so we can apply
> the fix?

+ Jani for that

Regards, Joonas

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

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

* ✓ Fi.CI.BAT: success for drm/i915/selftests: Fix error checking for wait_var_timeout
  2018-04-17 17:06 [PATCH] drm/i915/selftests: Fix error checking for wait_var_timeout Chris Wilson
                   ` (2 preceding siblings ...)
  2018-04-18  9:10 ` [PATCH] " Joonas Lahtinen
@ 2018-04-18 10:18 ` Patchwork
  2018-04-18 10:36 ` [PATCH] " Mika Kuoppala
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 12+ messages in thread
From: Patchwork @ 2018-04-18 10:18 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915/selftests: Fix error checking for wait_var_timeout
URL   : https://patchwork.freedesktop.org/series/41835/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4063 -> Patchwork_8721 =

== Summary - WARNING ==

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

== Possible new issues ==

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

  === IGT changes ===

    ==== Warnings ====

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

    
== Known issues ==

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

  === IGT changes ===

    ==== Issues hit ====

    igt@kms_pipe_crc_basic@suspend-read-crc-pipe-c:
      fi-ivb-3520m:       PASS -> DMESG-WARN (fdo#106084)

    
    ==== Possible fixes ====

    igt@kms_pipe_crc_basic@suspend-read-crc-pipe-a:
      fi-ivb-3520m:       DMESG-WARN (fdo#106084) -> PASS

    
  fdo#106084 https://bugs.freedesktop.org/show_bug.cgi?id=106084


== Participating hosts (34 -> 33) ==

  Additional (1): fi-bxt-dsi 
  Missing    (2): fi-ilk-m540 fi-skl-6700hq 


== Build changes ==

    * Linux: CI_DRM_4063 -> Patchwork_8721

  CI_DRM_4063: 9bdf0998d567cbe94f712c8f3e8295fb0446e114 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4441: 83ba5b7d3bde48b383df41792fc9c955a5a23bdb @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_8721: 9d7673fca786b73d0e300c18daa78c3f96e3ee52 @ git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4441: e60d247eb359f044caf0c09904da14e39d7adca1 @ git://anongit.freedesktop.org/piglit


== Linux commits ==

9d7673fca786 drm/i915/selftests: Fix error checking for wait_var_timeout

== Logs ==

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

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

* Re: [PATCH] drm/i915/selftests: Fix error checking for wait_var_timeout
  2018-04-17 17:06 [PATCH] drm/i915/selftests: Fix error checking for wait_var_timeout Chris Wilson
                   ` (3 preceding siblings ...)
  2018-04-18 10:18 ` ✓ Fi.CI.BAT: success for " Patchwork
@ 2018-04-18 10:36 ` Mika Kuoppala
  2018-04-18 11:45 ` ✓ Fi.CI.BAT: success for " Patchwork
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 12+ messages in thread
From: Mika Kuoppala @ 2018-04-18 10:36 UTC (permalink / raw)
  To: Chris Wilson, intel-gfx

Chris Wilson <chris@chris-wilson.co.uk> writes:

> The old wait_on_atomic_t used a custom callback to perform the
> schedule(), which used my return semantics of reporting an error code on
> timeout. wait_var_event_timeout() uses the schedule() return semantics
> of reporting the remaining jiffies (1 if it timed out with 0 jiffies
> remaining!) and 0 on failure. This semantic mismatch lead to us falsely
> claiming a time out occurred.

I might have gone too far into the rabbit hole on this one.
The more I abseiled, the more there was macro trickery and
shadowing return values. Anxiety started to creep in.

I am back but will need to recuperate.

Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106085
> Fixes: d224985a5e31 ("sched/wait, drivers/drm: Convert wait_on_atomic_t() usage to the new wait_var_event() API")
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> ---
>  drivers/gpu/drm/i915/selftests/intel_breadcrumbs.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/selftests/intel_breadcrumbs.c b/drivers/gpu/drm/i915/selftests/intel_breadcrumbs.c
> index 46580026c7fc..d6926e7820e5 100644
> --- a/drivers/gpu/drm/i915/selftests/intel_breadcrumbs.c
> +++ b/drivers/gpu/drm/i915/selftests/intel_breadcrumbs.c
> @@ -412,10 +412,11 @@ static int igt_wakeup(void *arg)
>  		 * that they are ready for the next test. We wait until all
>  		 * threads are complete and waiting for us (i.e. not a seqno).
>  		 */
> -		err = wait_var_event_timeout(&done, !atomic_read(&done), 10 * HZ);
> -		if (err) {
> +		if (!wait_var_event_timeout(&done,
> +					    !atomic_read(&done), 10 * HZ)) {
>  			pr_err("Timed out waiting for %d remaining waiters\n",
>  			       atomic_read(&done));
> +			err = -ETIMEDOUT;
>  			break;
>  		}
>  
> -- 
> 2.17.0
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* ✓ Fi.CI.BAT: success for drm/i915/selftests: Fix error checking for wait_var_timeout
  2018-04-17 17:06 [PATCH] drm/i915/selftests: Fix error checking for wait_var_timeout Chris Wilson
                   ` (4 preceding siblings ...)
  2018-04-18 10:36 ` [PATCH] " Mika Kuoppala
@ 2018-04-18 11:45 ` Patchwork
  2018-04-18 12:22 ` ✓ Fi.CI.IGT: " Patchwork
  2018-04-18 13:38 ` Patchwork
  7 siblings, 0 replies; 12+ messages in thread
From: Patchwork @ 2018-04-18 11:45 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915/selftests: Fix error checking for wait_var_timeout
URL   : https://patchwork.freedesktop.org/series/41835/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4063 -> Patchwork_8727 =

== Summary - WARNING ==

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

== Possible new issues ==

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

  === IGT changes ===

    ==== Warnings ====

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

    
== Known issues ==

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

  === IGT changes ===

    ==== Possible fixes ====

    igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
      fi-ivb-3520m:       DMESG-WARN (fdo#106084) -> PASS +1

    
  fdo#106084 https://bugs.freedesktop.org/show_bug.cgi?id=106084


== Participating hosts (34 -> 33) ==

  Additional (1): fi-bxt-dsi 
  Missing    (2): fi-ilk-m540 fi-skl-6700hq 


== Build changes ==

    * Linux: CI_DRM_4063 -> Patchwork_8727

  CI_DRM_4063: 9bdf0998d567cbe94f712c8f3e8295fb0446e114 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4441: 83ba5b7d3bde48b383df41792fc9c955a5a23bdb @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_8727: 2b384334a9ae14feeb342a44369d8d20a5aa1930 @ git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4441: e60d247eb359f044caf0c09904da14e39d7adca1 @ git://anongit.freedesktop.org/piglit


== Linux commits ==

2b384334a9ae drm/i915/selftests: Fix error checking for wait_var_timeout

== Logs ==

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

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

* ✓ Fi.CI.IGT: success for drm/i915/selftests: Fix error checking for wait_var_timeout
  2018-04-17 17:06 [PATCH] drm/i915/selftests: Fix error checking for wait_var_timeout Chris Wilson
                   ` (5 preceding siblings ...)
  2018-04-18 11:45 ` ✓ Fi.CI.BAT: success for " Patchwork
@ 2018-04-18 12:22 ` Patchwork
  2018-04-18 13:38 ` Patchwork
  7 siblings, 0 replies; 12+ messages in thread
From: Patchwork @ 2018-04-18 12:22 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915/selftests: Fix error checking for wait_var_timeout
URL   : https://patchwork.freedesktop.org/series/41835/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4063_full -> Patchwork_8721_full =

== Summary - WARNING ==

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

== Possible new issues ==

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

  === IGT changes ===

    ==== Warnings ====

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

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

    igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-pwrite:
      shard-hsw:          SKIP -> PASS

    
== Known issues ==

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

  === IGT changes ===

    ==== Issues hit ====

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

    
    ==== Possible fixes ====

    igt@drv_selftest@mock_breadcrumbs:
      shard-hsw:          DMESG-FAIL (fdo#106085) -> PASS
      shard-snb:          DMESG-FAIL (fdo#106085) -> PASS
      shard-apl:          DMESG-FAIL (fdo#106085) -> PASS
      shard-kbl:          DMESG-FAIL (fdo#106085) -> PASS

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

    igt@kms_flip@plain-flip-fb-recreate-interruptible:
      shard-hsw:          FAIL (fdo#100368) -> PASS

    igt@kms_rotation_crc@sprite-rotation-90-pos-100-0:
      shard-apl:          FAIL (fdo#103925) -> PASS

    
  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060
  fdo#103925 https://bugs.freedesktop.org/show_bug.cgi?id=103925
  fdo#106085 https://bugs.freedesktop.org/show_bug.cgi?id=106085
  fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912


== Participating hosts (6 -> 4) ==

  Missing    (2): shard-glk shard-glkb 


== Build changes ==

    * Linux: CI_DRM_4063 -> Patchwork_8721

  CI_DRM_4063: 9bdf0998d567cbe94f712c8f3e8295fb0446e114 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4441: 83ba5b7d3bde48b383df41792fc9c955a5a23bdb @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_8721: 9d7673fca786b73d0e300c18daa78c3f96e3ee52 @ git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4441: e60d247eb359f044caf0c09904da14e39d7adca1 @ git://anongit.freedesktop.org/piglit

== Logs ==

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

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

* ✓ Fi.CI.IGT: success for drm/i915/selftests: Fix error checking for wait_var_timeout
  2018-04-17 17:06 [PATCH] drm/i915/selftests: Fix error checking for wait_var_timeout Chris Wilson
                   ` (6 preceding siblings ...)
  2018-04-18 12:22 ` ✓ Fi.CI.IGT: " Patchwork
@ 2018-04-18 13:38 ` Patchwork
  2018-05-02 10:20   ` Chris Wilson
  7 siblings, 1 reply; 12+ messages in thread
From: Patchwork @ 2018-04-18 13:38 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915/selftests: Fix error checking for wait_var_timeout
URL   : https://patchwork.freedesktop.org/series/41835/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4063_full -> Patchwork_8727_full =

== Summary - WARNING ==

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

== Possible new issues ==

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

  === IGT changes ===

    ==== Warnings ====

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

    igt@kms_frontbuffer_tracking@fbc-2p-primscrn-pri-shrfb-draw-pwrite:
      shard-hsw:          SKIP -> PASS

    
== Known issues ==

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

  === IGT changes ===

    ==== Issues hit ====

    igt@drv_suspend@forcewake:
      shard-kbl:          PASS -> INCOMPLETE (fdo#103665)

    igt@kms_flip@2x-flip-vs-expired-vblank:
      shard-hsw:          PASS -> FAIL (fdo#105707)

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

    
    ==== Possible fixes ====

    igt@drv_selftest@mock_breadcrumbs:
      shard-hsw:          DMESG-FAIL (fdo#106085) -> PASS
      shard-snb:          DMESG-FAIL (fdo#106085) -> PASS
      shard-apl:          DMESG-FAIL (fdo#106085) -> PASS
      shard-kbl:          DMESG-FAIL (fdo#106085) -> PASS

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

    igt@kms_flip@plain-flip-fb-recreate-interruptible:
      shard-hsw:          FAIL (fdo#100368) -> PASS

    igt@kms_rotation_crc@sprite-rotation-90-pos-100-0:
      shard-apl:          FAIL (fdo#103925) -> PASS

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

    igt@kms_sysfs_edid_timing:
      shard-apl:          WARN (fdo#100047) -> PASS

    
  fdo#100047 https://bugs.freedesktop.org/show_bug.cgi?id=100047
  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#103060 https://bugs.freedesktop.org/show_bug.cgi?id=103060
  fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
  fdo#103925 https://bugs.freedesktop.org/show_bug.cgi?id=103925
  fdo#105707 https://bugs.freedesktop.org/show_bug.cgi?id=105707
  fdo#106085 https://bugs.freedesktop.org/show_bug.cgi?id=106085
  fdo#99912 https://bugs.freedesktop.org/show_bug.cgi?id=99912


== Participating hosts (6 -> 4) ==

  Missing    (2): shard-glk shard-glkb 


== Build changes ==

    * Linux: CI_DRM_4063 -> Patchwork_8727

  CI_DRM_4063: 9bdf0998d567cbe94f712c8f3e8295fb0446e114 @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4441: 83ba5b7d3bde48b383df41792fc9c955a5a23bdb @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_8727: 2b384334a9ae14feeb342a44369d8d20a5aa1930 @ git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4441: e60d247eb359f044caf0c09904da14e39d7adca1 @ git://anongit.freedesktop.org/piglit

== Logs ==

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

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

* Re: ✓ Fi.CI.IGT: success for drm/i915/selftests: Fix error checking for wait_var_timeout
  2018-04-18 13:38 ` Patchwork
@ 2018-05-02 10:20   ` Chris Wilson
  0 siblings, 0 replies; 12+ messages in thread
From: Chris Wilson @ 2018-05-02 10:20 UTC (permalink / raw)
  To: Patchwork; +Cc: intel-gfx

Quoting Patchwork (2018-04-18 14:38:56)
>     ==== Possible fixes ====
> 
>     igt@drv_selftest@mock_breadcrumbs:
>       shard-hsw:          DMESG-FAIL (fdo#106085) -> PASS
>       shard-snb:          DMESG-FAIL (fdo#106085) -> PASS
>       shard-apl:          DMESG-FAIL (fdo#106085) -> PASS
>       shard-kbl:          DMESG-FAIL (fdo#106085) -> PASS

And with dinq rolled forward, I've pushed the patch. Thanks for the
review,
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

end of thread, other threads:[~2018-05-02 10:20 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-04-17 17:06 [PATCH] drm/i915/selftests: Fix error checking for wait_var_timeout Chris Wilson
2018-04-17 17:31 ` ✓ Fi.CI.BAT: success for " Patchwork
2018-04-17 17:47 ` ✓ Fi.CI.IGT: " Patchwork
2018-04-18  9:10 ` [PATCH] " Joonas Lahtinen
2018-04-18  9:14   ` Chris Wilson
2018-04-18 10:11     ` Joonas Lahtinen
2018-04-18 10:18 ` ✓ Fi.CI.BAT: success for " Patchwork
2018-04-18 10:36 ` [PATCH] " Mika Kuoppala
2018-04-18 11:45 ` ✓ Fi.CI.BAT: success for " Patchwork
2018-04-18 12:22 ` ✓ Fi.CI.IGT: " Patchwork
2018-04-18 13:38 ` Patchwork
2018-05-02 10:20   ` Chris Wilson

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.