[Intel-gfx] [PATCH 2/2] drm/i915: Add assert for no pending GPU requests during resume in LR mode

Chris Wilson chris at chris-wilson.co.uk
Thu Nov 3 19:08:06 UTC 2016


On Thu, Nov 03, 2016 at 06:19:38PM +0200, Imre Deak wrote:
> During resume we will reset the SW/HW tracking for each ring head/tail
> pointers and so are not prepared to replay any pending requests (as
> opposed to GPU reset time). Add an assert for this.

A bit belated. You could just put WARN_ON(dev_priv->gt.awake) in
i915_gem_resume() to mirror the assertions that we are idle on suspend.
> 
> Cc: Chris Wilson <chris at chris-wilson.co.uk>
> Cc: Mika Kuoppala <mika.kuoppala at intel.com>
> Signed-off-by: Imre Deak <imre.deak at intel.com>
> ---
>  drivers/gpu/drm/i915/intel_lrc.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/gpu/drm/i915/intel_lrc.c b/drivers/gpu/drm/i915/intel_lrc.c
> index ee4aaf1..ae46345 100644
> --- a/drivers/gpu/drm/i915/intel_lrc.c
> +++ b/drivers/gpu/drm/i915/intel_lrc.c
> @@ -2158,6 +2158,8 @@ void intel_lr_context_resume(struct drm_i915_private *dev_priv)
>  			if (WARN_ON(IS_ERR(reg)))
>  				continue;
>  
> +			WARN_ON(!execlists_elsp_idle(engine));

I don't think this check here documents the assumption of touching the
context. What you want is this assertion in suspend.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


More information about the Intel-gfx mailing list