[Intel-gfx] [PATCH] drm/i915: Update gen8_ppgtt_info to keep working in full ppgtt

Daniel Vetter daniel at ffwll.ch
Fri Aug 8 15:47:54 CEST 2014


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

> ---
>  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



More information about the Intel-gfx mailing list