Re: [PATCH 11/29] drm/i915: BUG_ON put_pages later

Daniel Vetter
2013-08-05T09:42:38Z

On Wed, Jul 31, 2013 at 05:00:04PM -0700, Ben Widawsky wrote:
> With multiple VMs, the eviction code benefits from being able to blindly
> put pages without needing to know if there are any entities still
> holding on to those pages. As such it's preferable to return the -EBUSY
> before the BUG.
>
> Eviction code is the only user for now, but overall it makes sense
> anyway, IMO.
>
> Signed-off-by: Ben Widawsky <ben@bwidawsk.net>
> ---
> drivers/gpu/drm/i915/i915_gem.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
> index adb0a18..dbf72d5 100644
> --- a/drivers/gpu/drm/i915/i915_gem.c
> +++ b/drivers/gpu/drm/i915/i915_gem.c
> @@ -1654,11 +1654,11 @@ i915_gem_object_put_pages(struct drm_i915_gem_object *obj)
> if (obj->pages == NULL)
> return 0;
>
> - BUG_ON(i915_gem_obj_ggtt_bound(obj));
> -
> if (obj->pages_pin_count)
> return -EBUSY;
>
> + BUG_ON(i915_gem_obj_ggtt_bound(obj));

Hm, shouldn't this be a bound_any eventually? Again I'm too layz to check
the end result, just noting my thoughs here ;-)
-Daniel

> +
> /* ->put_pages might need to allocate memory for the bit17 swizzle
> * array, hence protect them from being reaped by removing them from gtt
> * lists early. */
> --
> 1.8.3.4
>
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx@lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx

--
Daniel Vetter
Software Engineer, Intel Corporation
+41 (0) 79 365 57 48 - http://blog.ffwll.ch