[Intel-gfx] [PATCH] drm/i915: Update gen8_ppgtt_info to keep working in full ppgtt
Ben Widawsky
ben at bwidawsk.net
Sat Aug 9 02:14:32 CEST 2014
On Fri, Aug 08, 2014 at 03:47:54PM +0200, Daniel Vetter wrote:
> On Fri, Aug 08, 2014 at 02:10:32PM +0100, Michel Thierry wrote:
> > The driver will no longer initialize the aliasing ppgtt if we have
> > full ppgtt enabled.
> >
> > gen8_ppgtt_info uses the aliasing ppgtt or the ppgtt from the
> > default context. This patch makes it clear.
> >
> > Cc: Daniel Vetter <daniel.vetter at ffwll.ch>
> > Signed-off-by: Michel Thierry <michel.thierry at intel.com>
>
> I actually looked at this one here and decided that ppgtt_info for gen8 is
> sufficiently broken so that we don't care. Imo we should refactor it a bit
> so that it does the same as the gen6 version, i.e. dump the aliasing ppgtt
> or the contexts.
>
> Trying to dump the default ctx ppgtt when full ppgtt is enabled is fairly
> usesless since nothing at all will ever use that one.
>
> Best approach is probably to remove the gen8 version and push the GenX
> checks down into the actual ppgtt dump functions or something like that.
> -Daniel
I did start down this path here:
http://patchwork.freedesktop.org/patch/25728/ (originally here: http://patchwork.freedesktop.org/patch/22348/)
It also helped with the later addition for dynamic page tables. I would
ask that someone look at fixing that patch to their needs should the
dynamic page table patches ever get merged.
>
> > ---
> > drivers/gpu/drm/i915/i915_debugfs.c | 6 ++++++
> > 1 file changed, 6 insertions(+)
> >
> > diff --git a/drivers/gpu/drm/i915/i915_debugfs.c b/drivers/gpu/drm/i915/i915_debugfs.c
> > index 8dc82c3..a62ac66 100644
> > --- a/drivers/gpu/drm/i915/i915_debugfs.c
> > +++ b/drivers/gpu/drm/i915/i915_debugfs.c
> > @@ -1995,8 +1995,14 @@ static void gen8_ppgtt_info(struct seq_file *m, struct drm_device *dev)
> > struct drm_i915_private *dev_priv = dev->dev_private;
> > struct intel_engine_cs *ring;
> > struct i915_hw_ppgtt *ppgtt = dev_priv->mm.aliasing_ppgtt;
> > + struct intel_context *ctx = dev_priv->ring[RCS].default_context;
> > int unused, i;
> >
> > + if (USES_FULL_PPGTT(dev))
> > + ppgtt = ctx->ppgtt;
> > + else
> > + ppgtt = dev_priv->mm.aliasing_ppgtt;
> > +
> > if (!ppgtt)
> > return;
> >
> > --
> > 2.0.3
> >
>
> --
> Daniel Vetter
> Software Engineer, Intel Corporation
> +41 (0) 79 365 57 48 - http://blog.ffwll.ch
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Ben Widawsky, Intel Open Source Technology Center
More information about the Intel-gfx
mailing list