Browse Source

drm/i915/debugfs: Include list totals

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Chris Wilson 15 years ago
parent
commit
8f2480fb05
1 changed files with 9 additions and 2 deletions
  1. 9 2
      drivers/gpu/drm/i915/i915_debugfs.c

+ 9 - 2
drivers/gpu/drm/i915/i915_debugfs.c

@@ -135,7 +135,8 @@ static int i915_gem_object_list_info(struct seq_file *m, void *data)
 	struct drm_device *dev = node->minor->dev;
 	drm_i915_private_t *dev_priv = dev->dev_private;
 	struct drm_i915_gem_object *obj_priv;
-	int ret;
+	size_t total_obj_size, total_gtt_size;
+	int count, ret;
 
 	ret = mutex_lock_interruptible(&dev->struct_mutex);
 	if (ret)
@@ -171,13 +172,19 @@ static int i915_gem_object_list_info(struct seq_file *m, void *data)
 		return -EINVAL;
 	}
 
+	total_obj_size = total_gtt_size = count = 0;
 	list_for_each_entry(obj_priv, head, list) {
 		seq_printf(m, "   ");
 		describe_obj(m, obj_priv);
 		seq_printf(m, "\n");
+		total_obj_size += obj_priv->base.size;
+		total_gtt_size += obj_priv->gtt_space->size;
+		count++;
 	}
-
 	mutex_unlock(&dev->struct_mutex);
+
+	seq_printf(m, "Total %d objects, %zu bytes, %zu GTT size\n",
+		   count, total_obj_size, total_gtt_size);
 	return 0;
 }