[Intel-gfx] [PATCH] drm/i915: Move hangcheck reset from out of the engines into the GPU reset
Mika Kuoppala
mika.kuoppala at linux.intel.com
Thu Jul 14 13:59:56 UTC 2016
Chris Wilson <chris at chris-wilson.co.uk> writes:
> Let's not reset the hangcheck as a side-effect of initialising the
> engine, but as part of our GPU reset.
>
I think TDR will need both the init and the reset.
-Mika
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> Cc: Mika Kuoppala <mika.kuoppala at intel.com>
> Cc: Arun Siluvery <arun.siluvery at linux.intel.com>
> Cc: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
> ---
> drivers/gpu/drm/i915/i915_gem.c | 1 +
> drivers/gpu/drm/i915/intel_lrc.c | 2 --
> drivers/gpu/drm/i915/intel_ringbuffer.c | 2 --
> 3 files changed, 1 insertion(+), 4 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
> index b788f97cd4cf..978fa6f6f747 100644
> --- a/drivers/gpu/drm/i915/i915_gem.c
> +++ b/drivers/gpu/drm/i915/i915_gem.c
> @@ -3169,6 +3169,7 @@ static void i915_gem_reset_engine_cleanup(struct intel_engine_cs *engine)
> }
>
> intel_ring_init_seqno(engine, engine->last_submitted_seqno);
> + intel_engine_init_hangcheck(engine);
> }
>
> void i915_gem_reset(struct drm_device *dev)
> diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
> index b6af635e3a0f..377cfbfb71fd 100644
> --- a/drivers/gpu/drm/i915/intel_lrc.c
> +++ b/drivers/gpu/drm/i915/intel_lrc.c
> @@ -1529,8 +1529,6 @@ static int gen8_init_common_ring(struct intel_engine_cs *engine)
> engine->next_context_status_buffer = next_context_status_buffer_hw;
> DRM_DEBUG_DRIVER("Execlists enabled for %s\n", engine->name);
>
> - intel_engine_init_hangcheck(engine);
> -
> return intel_mocs_init_engine(engine);
> }
>
> diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c b/drivers/gpu/drm/i915/intel_ringbuffer.c
> index 94c8ef461721..8a9e035341a9 100644
> --- a/drivers/gpu/drm/i915/intel_ringbuffer.c
> +++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
> @@ -627,8 +627,6 @@ static int init_ring_common(struct intel_engine_cs *engine)
> ringbuf->tail = I915_READ_TAIL(engine) & TAIL_ADDR;
> intel_ring_update_space(ringbuf);
>
> - intel_engine_init_hangcheck(engine);
> -
> out:
> intel_uncore_forcewake_put(dev_priv, FORCEWAKE_ALL);
>
> --
> 2.8.1
More information about the Intel-gfx
mailing list