Message ID | 1407503432-14037-1-git-send-email-michel.thierry@intel.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
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@ffwll.ch> > Signed-off-by: Michel Thierry <michel.thierry@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 > --- > 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 >
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@ffwll.ch> > > Signed-off-by: Michel Thierry <michel.thierry@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@lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/intel-gfx
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;
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@ffwll.ch> Signed-off-by: Michel Thierry <michel.thierry@intel.com> --- drivers/gpu/drm/i915/i915_debugfs.c | 6 ++++++ 1 file changed, 6 insertions(+)