All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] drm/i915: Skip engine serialisation for no-op seqno reset
@ 2018-11-26  9:56 Chris Wilson
  2018-11-26 12:52 ` ✓ Fi.CI.BAT: success for " Patchwork
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Chris Wilson @ 2018-11-26  9:56 UTC (permalink / raw)
  To: intel-gfx

If the engine's seqno is already at our target seqno (most likely it
hasn't been used since the last reset), we can skip serialising the
engine and leave it as is.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
---
 drivers/gpu/drm/i915/i915_request.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/gpu/drm/i915/i915_request.c b/drivers/gpu/drm/i915/i915_request.c
index 71107540581d..ca95ab2f4cfa 100644
--- a/drivers/gpu/drm/i915/i915_request.c
+++ b/drivers/gpu/drm/i915/i915_request.c
@@ -136,6 +136,9 @@ static int reset_all_global_seqno(struct drm_i915_private *i915, u32 seqno)
 			  intel_engine_get_seqno(engine),
 			  seqno);
 
+		if (seqno == engine->timeline.seqno)
+			continue;
+
 		kthread_park(engine->breadcrumbs.signaler);
 
 		if (!i915_seqno_passed(seqno, engine->timeline.seqno)) {
-- 
2.20.0.rc1

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

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

* ✓ Fi.CI.BAT: success for drm/i915: Skip engine serialisation for no-op seqno reset
  2018-11-26  9:56 [PATCH] drm/i915: Skip engine serialisation for no-op seqno reset Chris Wilson
@ 2018-11-26 12:52 ` Patchwork
  2018-11-26 16:25 ` ✗ Fi.CI.IGT: failure " Patchwork
  2018-11-27 12:54 ` [PATCH] " Mika Kuoppala
  2 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2018-11-26 12:52 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Skip engine serialisation for no-op seqno reset
URL   : https://patchwork.freedesktop.org/series/53005/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_5200 -> Patchwork_10904 =

== Summary - SUCCESS ==

  No regressions found.

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

== Known issues ==

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

  === IGT changes ===

    ==== Issues hit ====

    igt@i915_selftest@live_hangcheck:
      fi-kbl-7560u:       PASS -> INCOMPLETE (fdo#108044)

    igt@kms_frontbuffer_tracking@basic:
      fi-hsw-peppy:       PASS -> DMESG-WARN (fdo#102614)

    igt@kms_pipe_crc_basic@suspend-read-crc-pipe-b:
      fi-blb-e6850:       PASS -> INCOMPLETE (fdo#107718)

    
    ==== Possible fixes ====

    igt@gem_ctx_create@basic-files:
      {fi-icl-u3}:        DMESG-WARN (fdo#107724) -> PASS
      fi-bsw-n3050:       FAIL (fdo#108656) -> PASS

    igt@gem_mmap_gtt@basic-small-copy:
      fi-glk-dsi:         INCOMPLETE (fdo#103359, k.org#198133) -> PASS

    igt@kms_pipe_crc_basic@nonblocking-crc-pipe-b-frame-sequence:
      fi-byt-clapper:     FAIL (fdo#103191, fdo#107362) -> PASS

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

  fdo#102614 https://bugs.freedesktop.org/show_bug.cgi?id=102614
  fdo#103191 https://bugs.freedesktop.org/show_bug.cgi?id=103191
  fdo#103359 https://bugs.freedesktop.org/show_bug.cgi?id=103359
  fdo#107362 https://bugs.freedesktop.org/show_bug.cgi?id=107362
  fdo#107718 https://bugs.freedesktop.org/show_bug.cgi?id=107718
  fdo#107724 https://bugs.freedesktop.org/show_bug.cgi?id=107724
  fdo#108044 https://bugs.freedesktop.org/show_bug.cgi?id=108044
  fdo#108656 https://bugs.freedesktop.org/show_bug.cgi?id=108656
  k.org#198133 https://bugzilla.kernel.org/show_bug.cgi?id=198133


== Participating hosts (52 -> 46) ==

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


== Build changes ==

    * Linux: CI_DRM_5200 -> Patchwork_10904

  CI_DRM_5200: d30879c3f1a18d3b7eeba861f63dc3522e6764ae @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4726: f48bebb15d3d2c1e6382e1f11b0aeac06fae6082 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_10904: 770e6d7658f3e876e92a41273a8866465b8f959c @ git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

770e6d7658f3 drm/i915: Skip engine serialisation for no-op seqno reset

== Logs ==

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

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

* ✗ Fi.CI.IGT: failure for drm/i915: Skip engine serialisation for no-op seqno reset
  2018-11-26  9:56 [PATCH] drm/i915: Skip engine serialisation for no-op seqno reset Chris Wilson
  2018-11-26 12:52 ` ✓ Fi.CI.BAT: success for " Patchwork
@ 2018-11-26 16:25 ` Patchwork
  2018-11-27 12:54 ` [PATCH] " Mika Kuoppala
  2 siblings, 0 replies; 5+ messages in thread
From: Patchwork @ 2018-11-26 16:25 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Skip engine serialisation for no-op seqno reset
URL   : https://patchwork.freedesktop.org/series/53005/
State : failure

== Summary ==

= CI Bug Log - changes from CI_DRM_5200_full -> Patchwork_10904_full =

== Summary - FAILURE ==

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

  

== Possible new issues ==

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

  === IGT changes ===

    ==== Possible regressions ====

    igt@gem_exec_fence@basic-await-default:
      shard-hsw:          PASS -> FAIL

    
== Known issues ==

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

  === IGT changes ===

    ==== Issues hit ====

    igt@gem_exec_schedule@pi-ringfull-render:
      shard-skl:          NOTRUN -> FAIL (fdo#103158)

    igt@kms_busy@extended-modeset-hang-newfb-render-c:
      shard-skl:          NOTRUN -> DMESG-WARN (fdo#107956) +1
      {shard-iclb}:       NOTRUN -> DMESG-WARN (fdo#107956)

    igt@kms_busy@extended-modeset-hang-newfb-with-reset-render-c:
      shard-apl:          NOTRUN -> DMESG-WARN (fdo#107956)

    igt@kms_busy@extended-pageflip-modeset-hang-oldfb-render-c:
      shard-kbl:          NOTRUN -> DMESG-WARN (fdo#107956)

    igt@kms_cursor_crc@cursor-256x256-random:
      shard-apl:          PASS -> FAIL (fdo#103232) +1

    igt@kms_cursor_crc@cursor-64x21-random:
      shard-skl:          PASS -> FAIL (fdo#103232)

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

    igt@kms_flip_tiling@flip-yf-tiled:
      shard-skl:          PASS -> FAIL (fdo#108145)

    igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-blt:
      shard-apl:          NOTRUN -> FAIL (fdo#103167)

    igt@kms_frontbuffer_tracking@fbc-1p-primscrn-cur-indfb-draw-pwrite:
      shard-apl:          PASS -> FAIL (fdo#103167)

    igt@kms_frontbuffer_tracking@fbc-1p-primscrn-spr-indfb-draw-pwrite:
      shard-glk:          PASS -> FAIL (fdo#103167) +2

    igt@kms_frontbuffer_tracking@fbc-1p-rte:
      shard-apl:          PASS -> FAIL (fdo#105682, fdo#103167)

    igt@kms_frontbuffer_tracking@fbcpsr-2p-primscrn-cur-indfb-draw-blt:
      shard-apl:          SKIP -> INCOMPLETE (fdo#103927)

    igt@kms_plane@plane-position-covered-pipe-a-planes:
      shard-glk:          PASS -> FAIL (fdo#103166)

    igt@kms_plane@plane-position-covered-pipe-c-planes:
      shard-apl:          PASS -> FAIL (fdo#103166)

    igt@kms_plane_alpha_blend@pipe-a-alpha-7efc:
      shard-apl:          NOTRUN -> FAIL (fdo#108145)

    igt@kms_plane_alpha_blend@pipe-c-coverage-7efc:
      shard-skl:          PASS -> FAIL (fdo#107815)

    igt@kms_plane_multiple@atomic-pipe-c-tiling-x:
      {shard-iclb}:       PASS -> FAIL (fdo#103166)

    igt@kms_psr@no_drrs:
      {shard-iclb}:       PASS -> FAIL (fdo#108341)

    igt@kms_vblank@pipe-b-wait-forked-busy:
      shard-kbl:          PASS -> DMESG-WARN (fdo#103558, fdo#105602) +8

    igt@perf_pmu@rc6-runtime-pm-long:
      {shard-iclb}:       NOTRUN -> FAIL (fdo#105010)
      shard-skl:          NOTRUN -> FAIL (fdo#105010)

    igt@pm_rpm@cursor:
      shard-skl:          PASS -> INCOMPLETE (fdo#107807) +3

    igt@pm_rpm@gem-pread:
      {shard-iclb}:       PASS -> INCOMPLETE (fdo#107713, fdo#108840) +1

    igt@pm_rpm@universal-planes:
      {shard-iclb}:       PASS -> DMESG-WARN (fdo#108654, fdo#108756)

    {igt@runner@aborted}:
      {shard-iclb}:       NOTRUN -> FAIL (fdo#108756)

    
    ==== Possible fixes ====

    igt@gem_ctx_isolation@rcs0-s3:
      shard-skl:          INCOMPLETE (fdo#107773, fdo#104108) -> PASS

    igt@gem_ppgtt@blt-vs-render-ctxn:
      shard-kbl:          INCOMPLETE (fdo#106887, fdo#106023, fdo#103665) -> PASS

    igt@kms_cursor_crc@cursor-256x256-sliding:
      shard-apl:          INCOMPLETE (fdo#103927) -> PASS

    igt@kms_cursor_crc@cursor-64x21-random:
      shard-apl:          FAIL (fdo#103232) -> PASS +1

    igt@kms_cursor_crc@cursor-64x64-suspend:
      shard-skl:          INCOMPLETE (fdo#104108) -> PASS

    igt@kms_draw_crc@draw-method-xrgb2101010-blt-xtiled:
      shard-skl:          FAIL (fdo#103184) -> PASS

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

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

    igt@kms_frontbuffer_tracking@fbc-2p-primscrn-spr-indfb-draw-mmap-gtt:
      shard-glk:          FAIL (fdo#103167) -> PASS +1

    igt@kms_plane@plane-position-covered-pipe-c-planes:
      {shard-iclb}:       FAIL (fdo#103166) -> PASS

    igt@kms_plane_multiple@atomic-pipe-a-tiling-y:
      shard-glk:          FAIL (fdo#103166) -> PASS

    igt@pm_rpm@basic-rte:
      shard-skl:          INCOMPLETE (fdo#107807) -> PASS +1

    igt@pm_rpm@system-suspend-devices:
      {shard-iclb}:       INCOMPLETE (fdo#107713, fdo#108840) -> PASS

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

  fdo#100368 https://bugs.freedesktop.org/show_bug.cgi?id=100368
  fdo#103158 https://bugs.freedesktop.org/show_bug.cgi?id=103158
  fdo#103166 https://bugs.freedesktop.org/show_bug.cgi?id=103166
  fdo#103167 https://bugs.freedesktop.org/show_bug.cgi?id=103167
  fdo#103184 https://bugs.freedesktop.org/show_bug.cgi?id=103184
  fdo#103232 https://bugs.freedesktop.org/show_bug.cgi?id=103232
  fdo#103558 https://bugs.freedesktop.org/show_bug.cgi?id=103558
  fdo#103665 https://bugs.freedesktop.org/show_bug.cgi?id=103665
  fdo#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927
  fdo#104108 https://bugs.freedesktop.org/show_bug.cgi?id=104108
  fdo#105010 https://bugs.freedesktop.org/show_bug.cgi?id=105010
  fdo#105363 https://bugs.freedesktop.org/show_bug.cgi?id=105363
  fdo#105602 https://bugs.freedesktop.org/show_bug.cgi?id=105602
  fdo#105682 https://bugs.freedesktop.org/show_bug.cgi?id=105682
  fdo#106023 https://bugs.freedesktop.org/show_bug.cgi?id=106023
  fdo#106887 https://bugs.freedesktop.org/show_bug.cgi?id=106887
  fdo#107713 https://bugs.freedesktop.org/show_bug.cgi?id=107713
  fdo#107773 https://bugs.freedesktop.org/show_bug.cgi?id=107773
  fdo#107807 https://bugs.freedesktop.org/show_bug.cgi?id=107807
  fdo#107815 https://bugs.freedesktop.org/show_bug.cgi?id=107815
  fdo#107956 https://bugs.freedesktop.org/show_bug.cgi?id=107956
  fdo#108145 https://bugs.freedesktop.org/show_bug.cgi?id=108145
  fdo#108341 https://bugs.freedesktop.org/show_bug.cgi?id=108341
  fdo#108654 https://bugs.freedesktop.org/show_bug.cgi?id=108654
  fdo#108756 https://bugs.freedesktop.org/show_bug.cgi?id=108756
  fdo#108840 https://bugs.freedesktop.org/show_bug.cgi?id=108840


== Participating hosts (7 -> 7) ==

  No changes in participating hosts


== Build changes ==

    * Linux: CI_DRM_5200 -> Patchwork_10904

  CI_DRM_5200: d30879c3f1a18d3b7eeba861f63dc3522e6764ae @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4726: f48bebb15d3d2c1e6382e1f11b0aeac06fae6082 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_10904: 770e6d7658f3e876e92a41273a8866465b8f959c @ git://anongit.freedesktop.org/gfx-ci/linux
  piglit_4509: fdc5a4ca11124ab8413c7988896eec4c97336694 @ git://anongit.freedesktop.org/piglit

== Logs ==

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

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

* Re: [PATCH] drm/i915: Skip engine serialisation for no-op seqno reset
  2018-11-26  9:56 [PATCH] drm/i915: Skip engine serialisation for no-op seqno reset Chris Wilson
  2018-11-26 12:52 ` ✓ Fi.CI.BAT: success for " Patchwork
  2018-11-26 16:25 ` ✗ Fi.CI.IGT: failure " Patchwork
@ 2018-11-27 12:54 ` Mika Kuoppala
  2018-11-27 12:59   ` Chris Wilson
  2 siblings, 1 reply; 5+ messages in thread
From: Mika Kuoppala @ 2018-11-27 12:54 UTC (permalink / raw)
  To: Chris Wilson, intel-gfx

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

> If the engine's seqno is already at our target seqno (most likely it
> hasn't been used since the last reset), we can skip serialising the
> engine and leave it as is.
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> ---
>  drivers/gpu/drm/i915/i915_request.c | 3 +++
>  1 file changed, 3 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/i915_request.c b/drivers/gpu/drm/i915/i915_request.c
> index 71107540581d..ca95ab2f4cfa 100644
> --- a/drivers/gpu/drm/i915/i915_request.c
> +++ b/drivers/gpu/drm/i915/i915_request.c
> @@ -136,6 +136,9 @@ static int reset_all_global_seqno(struct drm_i915_private *i915, u32 seqno)
>  			  intel_engine_get_seqno(engine),
>  			  seqno);
>  
> +		if (seqno == engine->timeline.seqno)
> +			continue;
> +

Patch looks valid. Only concern is possibility of hiding
the idle assertion deeper. But as that is for icl
and debugfs stomping, I am in favour.

Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>

>  		kthread_park(engine->breadcrumbs.signaler);
>  
>  		if (!i915_seqno_passed(seqno, engine->timeline.seqno)) {
> -- 
> 2.20.0.rc1
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [PATCH] drm/i915: Skip engine serialisation for no-op seqno reset
  2018-11-27 12:54 ` [PATCH] " Mika Kuoppala
@ 2018-11-27 12:59   ` Chris Wilson
  0 siblings, 0 replies; 5+ messages in thread
From: Chris Wilson @ 2018-11-27 12:59 UTC (permalink / raw)
  To: Mika Kuoppala, intel-gfx

Quoting Mika Kuoppala (2018-11-27 12:54:07)
> Chris Wilson <chris@chris-wilson.co.uk> writes:
> 
> > If the engine's seqno is already at our target seqno (most likely it
> > hasn't been used since the last reset), we can skip serialising the
> > engine and leave it as is.
> >
> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> > ---
> >  drivers/gpu/drm/i915/i915_request.c | 3 +++
> >  1 file changed, 3 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/i915/i915_request.c b/drivers/gpu/drm/i915/i915_request.c
> > index 71107540581d..ca95ab2f4cfa 100644
> > --- a/drivers/gpu/drm/i915/i915_request.c
> > +++ b/drivers/gpu/drm/i915/i915_request.c
> > @@ -136,6 +136,9 @@ static int reset_all_global_seqno(struct drm_i915_private *i915, u32 seqno)
> >                         intel_engine_get_seqno(engine),
> >                         seqno);
> >  
> > +             if (seqno == engine->timeline.seqno)
> > +                     continue;
> > +
> 
> Patch looks valid. Only concern is possibility of hiding
> the idle assertion deeper. But as that is for icl
> and debugfs stomping, I am in favour.

Ssh, what if that was its primary raison d'etre? ;)
Though given the failure, it's not going to completely hide them.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

end of thread, other threads:[~2018-11-27 12:59 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-26  9:56 [PATCH] drm/i915: Skip engine serialisation for no-op seqno reset Chris Wilson
2018-11-26 12:52 ` ✓ Fi.CI.BAT: success for " Patchwork
2018-11-26 16:25 ` ✗ Fi.CI.IGT: failure " Patchwork
2018-11-27 12:54 ` [PATCH] " Mika Kuoppala
2018-11-27 12:59   ` 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.