[Intel-gfx] [PATCH] drm/i915: Remove wrong warning from i915_gem_context_clean
Daniel Vetter
daniel at ffwll.ch
Fri Oct 9 01:19:35 PDT 2015
On Thu, Oct 08, 2015 at 04:12:31PM +0100, Michel Thierry wrote:
> On 10/8/2015 3:37 PM, Tvrtko Ursulin wrote:
> >From: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
> >
> >commit e9f24d5fb7cf3628b195b18ff3ac4e37937ceeae
> >Author: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
> >Date: Mon Oct 5 13:26:36 2015 +0100
> >
> > drm/i915: Clean up associated VMAs on context destruction
> >
> >Introduced a wrong assumption that all contexts have a ppgtt
> >instance. This is not true when full PPGTT is not active so
> >remove the WARN_ON_ONCE from the context cleanup code.
>
> Aliasing ppgtt? (for the record, I tried with enable_ppgtt=1 while reviewing
> the patch and didn't see the warning... maybe I didn't try hard enough).
Aliasing ppgtt isn't a real ppgtt attached to a context, but just a pile
of pagetables attached to the global gtt in dev_priv->mm.aliasing_ppgtt.
Originally I had the idea that there would be another structure for the
real per-process stuff like
struct i915_ppgtt {
i915_address_space base;
i915_hw_ppgtt ppgtt;
};
but that kinda never got anywhere with the original per-process
infrastructure merge. So now I get to have a broken record about "aliasing
ppgtt isnt' a real ppgtt and will never show up in ctx->ppgtt".
>
> >
> >Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin at intel.com>
> >Cc: Michel Thierry <michel.thierry at intel.com>
> >---
> > drivers/gpu/drm/i915/i915_gem_context.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> >diff --git a/drivers/gpu/drm/i915/i915_gem_context.c b/drivers/gpu/drm/i915/i915_gem_context.c
> >index 680b4c9f6b73..8c688a5f1589 100644
> >--- a/drivers/gpu/drm/i915/i915_gem_context.c
> >+++ b/drivers/gpu/drm/i915/i915_gem_context.c
> >@@ -138,7 +138,7 @@ static void i915_gem_context_clean(struct intel_context *ctx)
> > struct i915_hw_ppgtt *ppgtt = ctx->ppgtt;
> > struct i915_vma *vma, *next;
> >
> >- if (WARN_ON_ONCE(!ppgtt))
> >+ if (!ppgtt)
> > return;
> >
> > WARN_ON(!list_empty(&ppgtt->base.active_list));
> >
>
> Reviewed-by: Michel Thierry <michel.thierry at intel.com>
Queued for -next, thanks for the patch.
-Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
More information about the Intel-gfx
mailing list