[Intel-gfx] [PATCH 15/21] drm/i915: Stop setting wraparound seqno on initialisation

Daniel Vetter daniel at ffwll.ch
Wed Jun 8 08:54:22 UTC 2016


On Fri, Jun 03, 2016 at 05:08:47PM +0100, Chris Wilson wrote:
> We have testcases to ensure that seqno wraparound works fine, so we can
> forgo forcing everyone to encounter seqno wraparound during early
> uptime. seqno wraparound incurs a full GPU stall so not forcing it
> will eliminate one jitter from the early system. Using the testcases, we
> have very deterministic testing which given how difficult it would be to
> debug an issue (GPU hang) stemming from a wraparound using pure
> postmortem analysis I see no value in forcing a wrap during boot.
> 
> Advancing the global next_seqno after a GPU reset is equally pointless.
> 
> References? https://bugs.freedesktop.org/show_bug.cgi?id=95023
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

Makes sense.

Reviewed-by: Daniel Vetter <daniel.vetter at ffwll.ch>

> ---
>  drivers/gpu/drm/i915/i915_gem.c | 14 --------------
>  1 file changed, 14 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
> index bf5c93f2bd81..269d00a40483 100644
> --- a/drivers/gpu/drm/i915/i915_gem.c
> +++ b/drivers/gpu/drm/i915/i915_gem.c
> @@ -4858,12 +4858,6 @@ i915_gem_init_hw(struct drm_device *dev)
>  			goto out;
>  	}
>  
> -	/*
> -	 * Increment the next seqno by 0x100 so we have a visible break
> -	 * on re-initialisation
> -	 */
> -	ret = i915_gem_set_seqno(dev, dev_priv->next_seqno+0x100);
> -
>  out:
>  	intel_uncore_forcewake_put(dev_priv, FORCEWAKE_ALL);
>  	return ret;
> @@ -5006,14 +5000,6 @@ i915_gem_load_init(struct drm_device *dev)
>  
>  	dev_priv->relative_constants_mode = I915_EXEC_CONSTANTS_REL_GENERAL;
>  
> -	/*
> -	 * Set initial sequence number for requests.
> -	 * Using this number allows the wraparound to happen early,
> -	 * catching any obvious problems.
> -	 */
> -	dev_priv->next_seqno = ((u32)~0 - 0x1100);
> -	dev_priv->last_seqno = ((u32)~0 - 0x1101);
> -
>  	INIT_LIST_HEAD(&dev_priv->mm.fence_list);
>  
>  	init_waitqueue_head(&dev_priv->pending_flip_queue);
> -- 
> 2.8.1
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch


More information about the Intel-gfx mailing list