[Intel-gfx] [PATCH 02/62] drm/i915: Do not keep postponing the idle-work

Joonas Lahtinen joonas.lahtinen at linux.intel.com
Tue Jun 7 11:34:02 UTC 2016


On pe, 2016-06-03 at 17:36 +0100, Chris Wilson wrote:
> Rather than persistently postponing the idle-work everytime somebody
> calls i915_gem_retire_requests() (potentially ensuring that we never
> reach the idle state), queue the work the first time we detect all
> requests are complete. Then if in 100ms, more requests have been queued,
> we will abort the idle-worker and wait again until all the new requests
> have been completed.
> 

This does depend on the previous patch, might be worth rewording to
bring that up. But it makes much more sense to me.

> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>

Reviewed-by: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>

> ---
>  drivers/gpu/drm/i915/i915_gem.c | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
> index 5a7131b749a2..e27c9331b84b 100644
> --- a/drivers/gpu/drm/i915/i915_gem.c
> +++ b/drivers/gpu/drm/i915/i915_gem.c
> @@ -3000,9 +3000,9 @@ void i915_gem_retire_requests(struct drm_i915_private *dev_priv)
>  	}
>  
>  	if (dev_priv->gt.active_engines == 0)
> -		mod_delayed_work(dev_priv->wq,
> -				 &dev_priv->gt.idle_work,
> -				 msecs_to_jiffies(100));
> +		queue_delayed_work(dev_priv->wq,
> +				   &dev_priv->gt.idle_work,
> +				   msecs_to_jiffies(100));
>  }
>  
>  static void
-- 
Joonas Lahtinen
Open Source Technology Center
Intel Corporation


More information about the Intel-gfx mailing list