[Intel-gfx] [PATCH] drm/i915: A hotfix for making aliasing PPGTT work

Chris Wilson chris at chris-wilson.co.uk
Thu Feb 9 07:57:33 UTC 2017


On Wed, Feb 08, 2017 at 09:03:33PM +0800, Zhi Wang wrote:
> This patch makes PPGTT page table non-shrinkable when using aliasing PPGTT
> mode. It's just a temporary solution for making aliasing PPGTT mode work.
> 
> Cc: Tvrtko Ursulin <tvrtko.ursulin at linux.intel.com>
> Cc: Michal Winiarski <michal.winiarski at intel.com>
> Cc: Michel Thierry <michel.thierry at intel.com>
> Cc: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>
> Cc: Chris Wilson <chris at chris-wilson.co.uk>
> Cc: Daniel Vetter <daniel.vetter at intel.com>
> Cc: Zhenyu Wang <zhenyuw at linux.intel.com>
> Cc: Zhiyuan Lv <zhiyuan.lv at intel.com>
> Signed-off-by: Zhi Wang <zhi.a.wang at intel.com>
> ---
>  drivers/gpu/drm/i915/i915_gem_gtt.c | 8 +++++---
>  1 file changed, 5 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c
> index 22b3374..3af3b1c 100644
> --- a/drivers/gpu/drm/i915/i915_gem_gtt.c
> +++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
> @@ -754,10 +754,12 @@ static bool gen8_ppgtt_clear_pt(struct i915_address_space *vm,
>  
>  	GEM_BUG_ON(pte_end > GEN8_PTES);
>  
> -	bitmap_clear(pt->used_ptes, pte, num_entries);
> +	if (USES_FULL_PPGTT(vm->i915)) {
> +		bitmap_clear(pt->used_ptes, pte, num_entries);
>  
> -	if (bitmap_empty(pt->used_ptes, GEN8_PTES))
> -		return true;
> +		if (bitmap_empty(pt->used_ptes, GEN8_PTES))
> +			return true;

I would have personally used return USES_FULL_PPGTT(vm->i915) because
that's a smaller patch and doesn't disrupt the flow as much.

Respin and have a r-b if you can suggest an igt...
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


More information about the Intel-gfx mailing list