[Intel-gfx] [PATCH] drm/i915: print object bindings in debugfs

Daniel Vetter daniel.vetter at ffwll.ch
Fri Oct 18 18:13:14 CEST 2013


This is useful when we only have aliasing ppgtt and want to figure out
what exactly is accesssible and what not. Paulo can somehow overwrite
the fbcon framebuffer with the blitter on his hsw machine ...

v2: Actually make it compile.

Cc: Paulo Zanoni <przanoni at gmail.com>
Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch>
---
 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 061182a..2272898 100644
--- a/drivers/gpu/drm/i915/i915_debugfs.c
+++ b/drivers/gpu/drm/i915/i915_debugfs.c
@@ -124,7 +124,9 @@ static inline const char *get_global_flag(struct drm_i915_gem_object *obj)
 static void
 describe_obj(struct seq_file *m, struct drm_i915_gem_object *obj)
 {
+	struct drm_i915_private *dev_priv = obj->base.dev->dev_private;
 	struct i915_vma *vma;
+
 	seq_printf(m, "%pK: %s%s%s %8zdKiB %02x %02x %u %u %u%s%s%s",
 		   &obj->base,
 		   get_pin_flag(obj),
@@ -155,6 +157,10 @@ describe_obj(struct seq_file *m, struct drm_i915_gem_object *obj)
 		seq_printf(m, "gtt offset: %08lx, size: %08lx)",
 			   vma->node.start, vma->node.size);
 	}
+	if (dev_priv->mm.aliasing_ppgtt)
+		seq_printf(m, " (bindings: %s%s)",
+			   obj->has_global_gtt_mapping ? "g" : "",
+			   obj->has_aliasing_ppgtt_mapping ? "pp" : "");
 	if (obj->stolen)
 		seq_printf(m, " (stolen: %08lx)", obj->stolen->start);
 	if (obj->pin_mappable || obj->fault_mappable) {
-- 
1.8.4.rc3




More information about the Intel-gfx mailing list