[Intel-gfx] [PATCH v3] drm/i915: A hotfix for making aliasing PPGTT work
Jani Nikula
jani.nikula at linux.intel.com
Thu Feb 9 12:23:25 UTC 2017
On Thu, 09 Feb 2017, Zhi Wang <zhi.a.wang at intel.com> 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.
>
> v3:
> - Fixes the format of "Fixes line".
>
> v2:
> - Add fixes tag. (Chris and Daniel)
>
> Fixes: 2ce5179fe826 ("drm/i915/gtt: Free unused lower-level page tables")
> Cc: Jani Nikula <jani.nikula at linux.intel.com>
> Cc: Daniel Vetter <daniel.vetter at ffwll.ch>
> 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>
> Link: http://patchwork.freedesktop.org/patch/msgid/1486559013-25251-2-git-send-email-zhi.a.wang@intel.com
> Reviewed-by: Chris Wilson <chris at chris-wilson.co.uk>
> Cc: <drm-intel-fixes at lists.freedesktop.org> # v4.10-rc1+
This won't make it to v4.10, as I've sent the pull request already and I
anticipate release this Sunday. Whoever applies this needs to add
Cc: stable at vger.kernel.org # v4.10
BR,
Jani.
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> ---
> drivers/gpu/drm/i915/i915_gem_gtt.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c
> index 22b3374..3233f12 100644
> --- a/drivers/gpu/drm/i915/i915_gem_gtt.c
> +++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
> @@ -756,8 +756,10 @@ static bool gen8_ppgtt_clear_pt(struct i915_address_space *vm,
>
> bitmap_clear(pt->used_ptes, pte, num_entries);
>
> - if (bitmap_empty(pt->used_ptes, GEN8_PTES))
> - return true;
> + if (USES_FULL_PPGTT(vm->i915)) {
> + if (bitmap_empty(pt->used_ptes, GEN8_PTES))
> + return true;
> + }
>
> pt_vaddr = kmap_px(pt);
--
Jani Nikula, Intel Open Source Technology Center
More information about the Intel-gfx
mailing list