On Son, 2011-03-13 at 21:06 +1000, Dave Airlie wrote: 
> From: Dave Airlie <airl...@redhat.com>
> 
> Iterations of this patch seemed to break active vram, this seems like
> a good plan for it.
> 
> second attempt to fix: https://bugs.freedesktop.org/show_bug.cgi?id=35254
> 
> Reported-by: Michael Larabel @ phoronix
> Signed-off-by: Dave Airlie <airl...@redhat.com>
> Cc: sta...@kernel.org
> ---
>  drivers/gpu/drm/radeon/radeon_object.c |    4 +++-
>  1 files changed, 3 insertions(+), 1 deletions(-)
> 
> diff --git a/drivers/gpu/drm/radeon/radeon_object.c 
> b/drivers/gpu/drm/radeon/radeon_object.c
> index 7d6b8e8..620c321 100644
> --- a/drivers/gpu/drm/radeon/radeon_object.c
> +++ b/drivers/gpu/drm/radeon/radeon_object.c
> @@ -73,9 +73,11 @@ void radeon_ttm_placement_from_domain(struct radeon_bo 
> *rbo, u32 domain)
>       rbo->placement.lpfn = 0;
>       rbo->placement.placement = rbo->placements;
>       rbo->placement.busy_placement = rbo->placements;
> -     if (domain & RADEON_GEM_DOMAIN_VRAM)
> +     if (domain & RADEON_GEM_DOMAIN_VRAM) {
>               rbo->placements[c++] = TTM_PL_FLAG_WC | TTM_PL_FLAG_UNCACHED |
>                                       TTM_PL_FLAG_VRAM;
> +             rbo->placement.lpfn = rbo->rdev->mc.active_vram_size >> 
> PAGE_SHIFT;
> +     }
>       if (domain & RADEON_GEM_DOMAIN_GTT)
>               rbo->placements[c++] = TTM_PL_MASK_CACHING | TTM_PL_FLAG_TT;
>       if (domain & RADEON_GEM_DOMAIN_CPU)

This can spuriously limit the BO to active_vram_size in GTT again.

I'm afraid the whole limits handling may need an overhaul...


-- 
Earthling Michel Dänzer           |                http://www.vmware.com
Libre software enthusiast         |          Debian, X and DRI developer
_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel

Reply via email to