diff options
author | Eric Anholt <eric@anholt.net> | 2009-02-17 23:53:41 -0800 |
---|---|---|
committer | Eric Anholt <eric@anholt.net> | 2009-03-27 15:12:04 -0700 |
commit | f4ceda89895b56e2c03dd327f13d0256838a20ab (patch) | |
tree | 710899415d78d2e59e6fcf925434ee38e7125f66 /drivers/gpu | |
parent | 433e12f78b68a8069f54956edf766bb21394c197 (diff) | |
download | kernel_samsung_tuna-f4ceda89895b56e2c03dd327f13d0256838a20ab.zip kernel_samsung_tuna-f4ceda89895b56e2c03dd327f13d0256838a20ab.tar.gz kernel_samsung_tuna-f4ceda89895b56e2c03dd327f13d0256838a20ab.tar.bz2 |
drm/i915: Add information on pinning and fencing to the i915 list debug.
This was inspired by a patch by Chris Wilson, though none of it applied in any
way due to the debugfs work and I decided to change the formatting of the
new information anyway.
Signed-off-by: Eric Anholt <eric@anholt.net>
Diffstat (limited to 'drivers/gpu')
-rw-r--r-- | drivers/gpu/drm/i915/i915_gem_debugfs.c | 31 |
1 files changed, 20 insertions, 11 deletions
diff --git a/drivers/gpu/drm/i915/i915_gem_debugfs.c b/drivers/gpu/drm/i915/i915_gem_debugfs.c index 4fc845c..f7e7d37 100644 --- a/drivers/gpu/drm/i915/i915_gem_debugfs.c +++ b/drivers/gpu/drm/i915/i915_gem_debugfs.c @@ -70,18 +70,27 @@ static int i915_gem_object_list_info(struct seq_file *m, void *data) list_for_each_entry(obj_priv, head, list) { + char *pin_description; struct drm_gem_object *obj = obj_priv->obj; - if (obj->name) { - seq_printf(m, " %p(%d): %08x %08x %d\n", - obj, obj->name, - obj->read_domains, obj->write_domain, - obj_priv->last_rendering_seqno); - } else { - seq_printf(m, " %p: %08x %08x %d\n", - obj, - obj->read_domains, obj->write_domain, - obj_priv->last_rendering_seqno); - } + + if (obj_priv->user_pin_count > 0) + pin_description = "P"; + else if (obj_priv->pin_count > 0) + pin_description = "p"; + else + pin_description = " "; + + seq_printf(m, " %p: %s %08x %08x %d", + obj, + pin_description, + obj->read_domains, obj->write_domain, + obj_priv->last_rendering_seqno); + + if (obj->name) + seq_printf(m, " (name: %d)", obj->name); + if (obj_priv->fence_reg != I915_FENCE_REG_NONE) + seq_printf(m, " (fence: %d\n", obj_priv->fence_reg); + seq_printf(m, "\n"); } return 0; } |