On Wed, Mar 04, 2015 at 06:09:26PM +0000, Chris Wilson wrote:
> This fixes a regression from
> 
> commit 5ed0bdf21a85d78e04f89f15ccf227562177cbd9
> Author: Thomas Gleixner <t...@linutronix.de>
> Date:   Wed Jul 16 21:05:06 2014 +0000
> 
>     drm: i915: Use nsec based interfaces
> 
> that made a negative timeout return immediately rather than the
> previously defined behaviour of waiting indefinitely.
> 
> Signed-off-by: Chris Wilson <ch...@chris-wilson.co.uk>
> Cc: Daniel Vetter <daniel.vet...@ffwll.ch>
> Cc: Ben Widawsky <benjamin.widaw...@intel.com>
> Cc: Kristian Høgsberg <k...@bitplanet.net>
> Cc: sta...@vger.kernel.org

Do you have the igt for this too? I think an wait while the buffer should
be busy with a negative timeout is all that's needed to exercise this.
-Daniel

> ---
>  drivers/gpu/drm/i915/i915_gem.c | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
> index 0cb858269be9..9d0df4d85693 100644
> --- a/drivers/gpu/drm/i915/i915_gem.c
> +++ b/drivers/gpu/drm/i915/i915_gem.c
> @@ -2957,9 +2957,9 @@ i915_gem_wait_ioctl(struct drm_device *dev, void *data, 
> struct drm_file *file)
>       req = obj->last_read_req;
>  
>       /* Do this after OLR check to make sure we make forward progress polling
> -      * on this IOCTL with a timeout <=0 (like busy ioctl)
> +      * on this IOCTL with a timeout == 0 (like busy ioctl)
>        */
> -     if (args->timeout_ns <= 0) {
> +     if (args->timeout_ns == 0) {
>               ret = -ETIME;
>               goto out;
>       }
> @@ -2969,7 +2969,8 @@ i915_gem_wait_ioctl(struct drm_device *dev, void *data, 
> struct drm_file *file)
>       i915_gem_request_reference(req);
>       mutex_unlock(&dev->struct_mutex);
>  
> -     ret = __i915_wait_request(req, reset_counter, true, &args->timeout_ns,
> +     ret = __i915_wait_request(req, reset_counter, true,
> +                               args->timeout_ns>0 ? &args->timeout_ns : NULL,
>                                 file->driver_priv);
>       mutex_lock(&dev->struct_mutex);
>       i915_gem_request_unreference(req);
> -- 
> 2.1.4
> 

-- 
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch
_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to