[Intel-gfx] [PATCH 3/3] drm/i915: Return correct size for rotated views

Chris Wilson chris at chris-wilson.co.uk
Tue Jun 23 03:29:40 PDT 2015


On Tue, Jun 23, 2015 at 11:04:42AM +0100, Tvrtko Ursulin wrote:
> From: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
> 
> Currently object size is returned for the rotated VMA size which can be
> bigger than the rotated view itself. Since the binding code pads all
> excess size with scratch pages the only minor issue with this is wasting
> some GGTT space, but still feels nicer to fix and report the real size.
> 
> Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>
> ---
>  drivers/gpu/drm/i915/i915_gem_gtt.c | 5 +++--
>  1 file changed, 3 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c
> index 43472c4..8e7cd22 100644
> --- a/drivers/gpu/drm/i915/i915_gem_gtt.c
> +++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
> @@ -2898,9 +2898,10 @@ size_t
>  i915_ggtt_view_size(struct drm_i915_gem_object *obj,
>  		    const struct i915_ggtt_view *view)
>  {
> -	if (view->type == I915_GGTT_VIEW_NORMAL ||
> -	    view->type == I915_GGTT_VIEW_ROTATED) {
> +	if (view->type == I915_GGTT_VIEW_NORMAL) {
>  		return obj->base.size;
> +	} else if (view->type == I915_GGTT_VIEW_ROTATED) {
> +		return view->rotation_info.pages << PAGE_SHIFT;

Time to change that variable name. pages is already used in both the vma
and obj to represent the struct sg_table, not the count.
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


More information about the Intel-gfx mailing list