intel-gfx.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] drm/i915: Clear stop-engine for a pardoned reset
@ 2018-08-14 17:18 Chris Wilson
  2018-08-14 17:48 ` ✓ Fi.CI.BAT: success for " Patchwork
                   ` (2 more replies)
  0 siblings, 3 replies; 8+ messages in thread
From: Chris Wilson @ 2018-08-14 17:18 UTC (permalink / raw)
  To: intel-gfx

If we pardon a per-engine reset, we may leave the STOP_RING bit asserted
in RING_MI_MODE resulting in the engine hanging. Unconditionally clear
it on the per-engine exit path as we know that either we skipped the
reset and so need the cancellation, or the reset was successful and the
cancellation is a no-op, or there was an error and we will follow up
with a full-reset or wedging (both of which will stop the engines again
as required).

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

diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
index 9dce55182c3a..41111f2a9c39 100644
--- a/drivers/gpu/drm/i915/i915_drv.c
+++ b/drivers/gpu/drm/i915/i915_drv.c
@@ -2079,6 +2079,7 @@ int i915_reset_engine(struct intel_engine_cs *engine, const char *msg)
 		goto out;
 
 out:
+	intel_engine_cancel_stop_cs(engine);
 	i915_gem_reset_finish_engine(engine);
 	return ret;
 }
diff --git a/drivers/gpu/drm/i915/intel_engine_cs.c b/drivers/gpu/drm/i915/intel_engine_cs.c
index 99d5a24219c1..8628567d8f6e 100644
--- a/drivers/gpu/drm/i915/intel_engine_cs.c
+++ b/drivers/gpu/drm/i915/intel_engine_cs.c
@@ -788,6 +788,16 @@ int intel_engine_stop_cs(struct intel_engine_cs *engine)
 	return err;
 }
 
+void intel_engine_cancel_stop_cs(struct intel_engine_cs *engine)
+{
+	struct drm_i915_private *dev_priv = engine->i915;
+
+	GEM_TRACE("%s\n", engine->name);
+
+	I915_WRITE_FW(RING_MI_MODE(engine->mmio_base),
+		      _MASKED_BIT_DISABLE(STOP_RING));
+}
+
 const char *i915_cache_level_str(struct drm_i915_private *i915, int type)
 {
 	switch (type) {
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h
index 9090885d57de..3f6920dd7880 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.h
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.h
@@ -906,6 +906,7 @@ int intel_init_blt_ring_buffer(struct intel_engine_cs *engine);
 int intel_init_vebox_ring_buffer(struct intel_engine_cs *engine);
 
 int intel_engine_stop_cs(struct intel_engine_cs *engine);
+void intel_engine_cancel_stop_cs(struct intel_engine_cs *engine);
 
 u64 intel_engine_get_active_head(const struct intel_engine_cs *engine);
 u64 intel_engine_get_last_batch_head(const struct intel_engine_cs *engine);
-- 
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] 8+ messages in thread

* ✓ Fi.CI.BAT: success for drm/i915: Clear stop-engine for a pardoned reset
  2018-08-14 17:18 [PATCH] drm/i915: Clear stop-engine for a pardoned reset Chris Wilson
@ 2018-08-14 17:48 ` Patchwork
  2018-08-14 17:53   ` Chris Wilson
  2018-08-15  0:35 ` ✓ Fi.CI.IGT: " Patchwork
  2018-08-15  8:52 ` [PATCH] " Mika Kuoppala
  2 siblings, 1 reply; 8+ messages in thread
From: Patchwork @ 2018-08-14 17:48 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Clear stop-engine for a pardoned reset
URL   : https://patchwork.freedesktop.org/series/48202/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4666 -> Patchwork_9943 =

== Summary - SUCCESS ==

  No regressions found.

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

== Known issues ==

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

  === IGT changes ===

    ==== Issues hit ====

    igt@drv_selftest@live_hangcheck:
      {fi-cfl-8109u}:     PASS -> DMESG-FAIL (fdo#106560)

    
    ==== Possible fixes ====

    igt@drv_module_reload@basic-reload-inject:
      fi-hsw-4770r:       DMESG-WARN (fdo#107425) -> PASS

    igt@drv_selftest@live_hangcheck:
      fi-kbl-7560u:       DMESG-FAIL (fdo#106560, fdo#106947) -> PASS

    igt@drv_selftest@live_workarounds:
      fi-skl-6700hq:      DMESG-FAIL (fdo#107292) -> PASS
      fi-cnl-psr:         DMESG-FAIL (fdo#107292) -> PASS

    igt@kms_frontbuffer_tracking@basic:
      {fi-byt-clapper}:   FAIL (fdo#103167) -> PASS

    igt@kms_pipe_crc_basic@suspend-read-crc-pipe-c:
      fi-bxt-dsi:         INCOMPLETE (fdo#103927) -> PASS

    
  {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#103927 https://bugs.freedesktop.org/show_bug.cgi?id=103927
  fdo#106560 https://bugs.freedesktop.org/show_bug.cgi?id=106560
  fdo#106947 https://bugs.freedesktop.org/show_bug.cgi?id=106947
  fdo#107292 https://bugs.freedesktop.org/show_bug.cgi?id=107292
  fdo#107425 https://bugs.freedesktop.org/show_bug.cgi?id=107425


== Participating hosts (53 -> 49) ==

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


== Build changes ==

    * Linux: CI_DRM_4666 -> Patchwork_9943

  CI_DRM_4666: 26f5eeef80e4332958ea855e90a4d015a9481e3f @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4594: b0263e5d0563a81a42cf66e7d3b84662d3222862 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9943: 614b7b2da5e1a413c0a2fc8e9915aee456a51c35 @ git://anongit.freedesktop.org/gfx-ci/linux


== Linux commits ==

614b7b2da5e1 drm/i915: Clear stop-engine for a pardoned reset

== Logs ==

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

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

* Re: ✓ Fi.CI.BAT: success for drm/i915: Clear stop-engine for a pardoned reset
  2018-08-14 17:48 ` ✓ Fi.CI.BAT: success for " Patchwork
@ 2018-08-14 17:53   ` Chris Wilson
  0 siblings, 0 replies; 8+ messages in thread
From: Chris Wilson @ 2018-08-14 17:53 UTC (permalink / raw)
  To: Patchwork; +Cc: intel-gfx

Quoting Patchwork (2018-08-14 18:48:08)
> == Series Details ==
> 
> Series: drm/i915: Clear stop-engine for a pardoned reset
> URL   : https://patchwork.freedesktop.org/series/48202/
> State : success
> 
> == Summary ==
> 
> = CI Bug Log - changes from CI_DRM_4666 -> Patchwork_9943 =
> 
> == Summary - SUCCESS ==
> 
>   No regressions found.
> 
>   External URL: https://patchwork.freedesktop.org/api/1.0/series/48202/revisions/1/mbox/
> 
> == Known issues ==
> 
>   Here are the changes found in Patchwork_9943 that come from known issues:
> 
>   === IGT changes ===
> 
>     ==== Issues hit ====
> 
>     igt@drv_selftest@live_hangcheck:
>       {fi-cfl-8109u}:     PASS -> DMESG-FAIL (fdo#106560)

A different bug at last! That's a missed CS interrupt of some
description instead.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* ✓ Fi.CI.IGT: success for drm/i915: Clear stop-engine for a pardoned reset
  2018-08-14 17:18 [PATCH] drm/i915: Clear stop-engine for a pardoned reset Chris Wilson
  2018-08-14 17:48 ` ✓ Fi.CI.BAT: success for " Patchwork
@ 2018-08-15  0:35 ` Patchwork
  2018-08-15  8:52 ` [PATCH] " Mika Kuoppala
  2 siblings, 0 replies; 8+ messages in thread
From: Patchwork @ 2018-08-15  0:35 UTC (permalink / raw)
  To: Chris Wilson; +Cc: intel-gfx

== Series Details ==

Series: drm/i915: Clear stop-engine for a pardoned reset
URL   : https://patchwork.freedesktop.org/series/48202/
State : success

== Summary ==

= CI Bug Log - changes from CI_DRM_4666_full -> Patchwork_9943_full =

== Summary - WARNING ==

  Minor unknown changes coming with Patchwork_9943_full need to be verified
  manually.
  
  If you think the reported changes have nothing to do with the changes
  introduced in Patchwork_9943_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_9943_full:

  === IGT changes ===

    ==== Warnings ====

    igt@kms_atomic_transition@plane-all-transition-fencing:
      shard-snb:          PASS -> SKIP

    igt@perf_pmu@rc6:
      shard-kbl:          SKIP -> PASS

    
== Known issues ==

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

  === IGT changes ===

    ==== Issues hit ====

    igt@gem_workarounds@suspend-resume:
      shard-glk:          PASS -> FAIL (fdo#103375)

    
    ==== Possible fixes ====

    igt@gem_workarounds@suspend-resume:
      shard-apl:          FAIL (fdo#103375) -> PASS

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

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


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

  No changes in participating hosts


== Build changes ==

    * Linux: CI_DRM_4666 -> Patchwork_9943

  CI_DRM_4666: 26f5eeef80e4332958ea855e90a4d015a9481e3f @ git://anongit.freedesktop.org/gfx-ci/linux
  IGT_4594: b0263e5d0563a81a42cf66e7d3b84662d3222862 @ git://anongit.freedesktop.org/xorg/app/intel-gpu-tools
  Patchwork_9943: 614b7b2da5e1a413c0a2fc8e9915aee456a51c35 @ 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_9943/shards.html
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [PATCH] drm/i915: Clear stop-engine for a pardoned reset
  2018-08-14 17:18 [PATCH] drm/i915: Clear stop-engine for a pardoned reset Chris Wilson
  2018-08-14 17:48 ` ✓ Fi.CI.BAT: success for " Patchwork
  2018-08-15  0:35 ` ✓ Fi.CI.IGT: " Patchwork
@ 2018-08-15  8:52 ` Mika Kuoppala
  2018-08-15  9:00   ` Chris Wilson
  2 siblings, 1 reply; 8+ messages in thread
From: Mika Kuoppala @ 2018-08-15  8:52 UTC (permalink / raw)
  To: Chris Wilson, intel-gfx

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

> If we pardon a per-engine reset, we may leave the STOP_RING bit asserted
> in RING_MI_MODE resulting in the engine hanging. Unconditionally clear
> it on the per-engine exit path as we know that either we skipped the
> reset and so need the cancellation, or the reset was successful and the
> cancellation is a no-op, or there was an error and we will follow up
> with a full-reset or wedging (both of which will stop the engines again
> as required).
>
> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> ---
>  drivers/gpu/drm/i915/i915_drv.c         |  1 +
>  drivers/gpu/drm/i915/intel_engine_cs.c  | 10 ++++++++++
>  drivers/gpu/drm/i915/intel_ringbuffer.h |  1 +
>  3 files changed, 12 insertions(+)
>
> diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
> index 9dce55182c3a..41111f2a9c39 100644
> --- a/drivers/gpu/drm/i915/i915_drv.c
> +++ b/drivers/gpu/drm/i915/i915_drv.c
> @@ -2079,6 +2079,7 @@ int i915_reset_engine(struct intel_engine_cs *engine, const char *msg)
>  		goto out;
>  
>  out:
> +	intel_engine_cancel_stop_cs(engine);
>  	i915_gem_reset_finish_engine(engine);

Should we just lift the whole stop/start dance into
gem_reset_prepare|finish_engine()s?

-Mika

>  	return ret;
>  }
> diff --git a/drivers/gpu/drm/i915/intel_engine_cs.c b/drivers/gpu/drm/i915/intel_engine_cs.c
> index 99d5a24219c1..8628567d8f6e 100644
> --- a/drivers/gpu/drm/i915/intel_engine_cs.c
> +++ b/drivers/gpu/drm/i915/intel_engine_cs.c
> @@ -788,6 +788,16 @@ int intel_engine_stop_cs(struct intel_engine_cs *engine)
>  	return err;
>  }
>  
> +void intel_engine_cancel_stop_cs(struct intel_engine_cs *engine)
> +{
> +	struct drm_i915_private *dev_priv = engine->i915;
> +
> +	GEM_TRACE("%s\n", engine->name);
> +
> +	I915_WRITE_FW(RING_MI_MODE(engine->mmio_base),
> +		      _MASKED_BIT_DISABLE(STOP_RING));
> +}
> +
>  const char *i915_cache_level_str(struct drm_i915_private *i915, int type)
>  {
>  	switch (type) {
> diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.h b/drivers/gpu/drm/i915/intel_ringbuffer.h
> index 9090885d57de..3f6920dd7880 100644
> --- a/drivers/gpu/drm/i915/intel_ringbuffer.h
> +++ b/drivers/gpu/drm/i915/intel_ringbuffer.h
> @@ -906,6 +906,7 @@ int intel_init_blt_ring_buffer(struct intel_engine_cs *engine);
>  int intel_init_vebox_ring_buffer(struct intel_engine_cs *engine);
>  
>  int intel_engine_stop_cs(struct intel_engine_cs *engine);
> +void intel_engine_cancel_stop_cs(struct intel_engine_cs *engine);
>  
>  u64 intel_engine_get_active_head(const struct intel_engine_cs *engine);
>  u64 intel_engine_get_last_batch_head(const struct intel_engine_cs *engine);
> -- 
> 2.18.0
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [PATCH] drm/i915: Clear stop-engine for a pardoned reset
  2018-08-15  8:52 ` [PATCH] " Mika Kuoppala
@ 2018-08-15  9:00   ` Chris Wilson
  2018-08-15  9:08     ` Mika Kuoppala
  0 siblings, 1 reply; 8+ messages in thread
From: Chris Wilson @ 2018-08-15  9:00 UTC (permalink / raw)
  To: Mika Kuoppala, intel-gfx

Quoting Mika Kuoppala (2018-08-15 09:52:18)
> Chris Wilson <chris@chris-wilson.co.uk> writes:
> 
> > If we pardon a per-engine reset, we may leave the STOP_RING bit asserted
> > in RING_MI_MODE resulting in the engine hanging. Unconditionally clear
> > it on the per-engine exit path as we know that either we skipped the
> > reset and so need the cancellation, or the reset was successful and the
> > cancellation is a no-op, or there was an error and we will follow up
> > with a full-reset or wedging (both of which will stop the engines again
> > as required).
> >
> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> > Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> > ---
> >  drivers/gpu/drm/i915/i915_drv.c         |  1 +
> >  drivers/gpu/drm/i915/intel_engine_cs.c  | 10 ++++++++++
> >  drivers/gpu/drm/i915/intel_ringbuffer.h |  1 +
> >  3 files changed, 12 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
> > index 9dce55182c3a..41111f2a9c39 100644
> > --- a/drivers/gpu/drm/i915/i915_drv.c
> > +++ b/drivers/gpu/drm/i915/i915_drv.c
> > @@ -2079,6 +2079,7 @@ int i915_reset_engine(struct intel_engine_cs *engine, const char *msg)
> >               goto out;
> >  
> >  out:
> > +     intel_engine_cancel_stop_cs(engine);
> >       i915_gem_reset_finish_engine(engine);
> 
> Should we just lift the whole stop/start dance into
> gem_reset_prepare|finish_engine()s?

No, because it is also used by wedging where we do want the asymmetry.
Been there, done that, have the gem_eio bruises.
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

* Re: [PATCH] drm/i915: Clear stop-engine for a pardoned reset
  2018-08-15  9:00   ` Chris Wilson
@ 2018-08-15  9:08     ` Mika Kuoppala
  2018-08-15  9:18       ` Chris Wilson
  0 siblings, 1 reply; 8+ messages in thread
From: Mika Kuoppala @ 2018-08-15  9:08 UTC (permalink / raw)
  To: Chris Wilson, intel-gfx

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

> Quoting Mika Kuoppala (2018-08-15 09:52:18)
>> Chris Wilson <chris@chris-wilson.co.uk> writes:
>> 
>> > If we pardon a per-engine reset, we may leave the STOP_RING bit asserted
>> > in RING_MI_MODE resulting in the engine hanging. Unconditionally clear
>> > it on the per-engine exit path as we know that either we skipped the
>> > reset and so need the cancellation, or the reset was successful and the
>> > cancellation is a no-op, or there was an error and we will follow up
>> > with a full-reset or wedging (both of which will stop the engines again
>> > as required).
>> >
>> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
>> > Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
>> > ---
>> >  drivers/gpu/drm/i915/i915_drv.c         |  1 +
>> >  drivers/gpu/drm/i915/intel_engine_cs.c  | 10 ++++++++++
>> >  drivers/gpu/drm/i915/intel_ringbuffer.h |  1 +
>> >  3 files changed, 12 insertions(+)
>> >
>> > diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
>> > index 9dce55182c3a..41111f2a9c39 100644
>> > --- a/drivers/gpu/drm/i915/i915_drv.c
>> > +++ b/drivers/gpu/drm/i915/i915_drv.c
>> > @@ -2079,6 +2079,7 @@ int i915_reset_engine(struct intel_engine_cs *engine, const char *msg)
>> >               goto out;
>> >  
>> >  out:
>> > +     intel_engine_cancel_stop_cs(engine);
>> >       i915_gem_reset_finish_engine(engine);
>> 
>> Should we just lift the whole stop/start dance into
>> gem_reset_prepare|finish_engine()s?
>
> No, because it is also used by wedging where we do want the asymmetry.
> Been there, done that, have the gem_eio bruises.

On wedge the submission path is blocked but yeah,
gpu can be in any state and enabling the engine at that
point is asking for trouble.

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

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

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

* Re: [PATCH] drm/i915: Clear stop-engine for a pardoned reset
  2018-08-15  9:08     ` Mika Kuoppala
@ 2018-08-15  9:18       ` Chris Wilson
  0 siblings, 0 replies; 8+ messages in thread
From: Chris Wilson @ 2018-08-15  9:18 UTC (permalink / raw)
  To: Mika Kuoppala, intel-gfx

Quoting Mika Kuoppala (2018-08-15 10:08:09)
> Chris Wilson <chris@chris-wilson.co.uk> writes:
> 
> > Quoting Mika Kuoppala (2018-08-15 09:52:18)
> >> Chris Wilson <chris@chris-wilson.co.uk> writes:
> >> 
> >> > If we pardon a per-engine reset, we may leave the STOP_RING bit asserted
> >> > in RING_MI_MODE resulting in the engine hanging. Unconditionally clear
> >> > it on the per-engine exit path as we know that either we skipped the
> >> > reset and so need the cancellation, or the reset was successful and the
> >> > cancellation is a no-op, or there was an error and we will follow up
> >> > with a full-reset or wedging (both of which will stop the engines again
> >> > as required).
> >> >
> >> > Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
> >> > Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
> >> > ---
> >> >  drivers/gpu/drm/i915/i915_drv.c         |  1 +
> >> >  drivers/gpu/drm/i915/intel_engine_cs.c  | 10 ++++++++++
> >> >  drivers/gpu/drm/i915/intel_ringbuffer.h |  1 +
> >> >  3 files changed, 12 insertions(+)
> >> >
> >> > diff --git a/drivers/gpu/drm/i915/i915_drv.c b/drivers/gpu/drm/i915/i915_drv.c
> >> > index 9dce55182c3a..41111f2a9c39 100644
> >> > --- a/drivers/gpu/drm/i915/i915_drv.c
> >> > +++ b/drivers/gpu/drm/i915/i915_drv.c
> >> > @@ -2079,6 +2079,7 @@ int i915_reset_engine(struct intel_engine_cs *engine, const char *msg)
> >> >               goto out;
> >> >  
> >> >  out:
> >> > +     intel_engine_cancel_stop_cs(engine);
> >> >       i915_gem_reset_finish_engine(engine);
> >> 
> >> Should we just lift the whole stop/start dance into
> >> gem_reset_prepare|finish_engine()s?
> >
> > No, because it is also used by wedging where we do want the asymmetry.
> > Been there, done that, have the gem_eio bruises.
> 
> On wedge the submission path is blocked but yeah,
> gpu can be in any state and enabling the engine at that
> point is asking for trouble.
> 
> Reviewed-by: Mika Kuoppala <mika.kuoppala@linux.intel.com>

Grabbed, pushed, and scarpered.

Although this should fix the silly STOP_RING hangs that have been
plaguing us for the last few months, there still seems to be more fun to
be had here. /o\
-Chris
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

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

end of thread, other threads:[~2018-08-15  9:18 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-08-14 17:18 [PATCH] drm/i915: Clear stop-engine for a pardoned reset Chris Wilson
2018-08-14 17:48 ` ✓ Fi.CI.BAT: success for " Patchwork
2018-08-14 17:53   ` Chris Wilson
2018-08-15  0:35 ` ✓ Fi.CI.IGT: " Patchwork
2018-08-15  8:52 ` [PATCH] " Mika Kuoppala
2018-08-15  9:00   ` Chris Wilson
2018-08-15  9:08     ` Mika Kuoppala
2018-08-15  9:18       ` Chris Wilson

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).