From: Oscar Mateo <[email protected]>
Signed-off-by: Oscar Mateo <[email protected]>
---
drivers/gpu/drm/i915/i915_debugfs.c | 26 ++++++++++++++++++++++++--
1 file changed, 24 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/i915/i915_debugfs.c
b/drivers/gpu/drm/i915/i915_debugfs.c
index 3ccdf0d..e5db287 100644
--- a/drivers/gpu/drm/i915/i915_debugfs.c
+++ b/drivers/gpu/drm/i915/i915_debugfs.c
@@ -1708,6 +1708,12 @@ static int i915_gem_framebuffer_info(struct seq_file *m,
void *data)
return 0;
}
+static void describe_ctx_ringbuf(struct seq_file *m, struct intel_ringbuffer
*ringbuf)
+{
+ seq_printf(m, " (ringbuffer, space: %d, head: %u, tail: %u, last head:
%d)",
+ ringbuf->space, ringbuf->head, ringbuf->tail,
+ ringbuf->last_retired_head);
+}
static int i915_context_status(struct seq_file *m, void *unused)
{
@@ -1716,6 +1722,7 @@ static int i915_context_status(struct seq_file *m, void
*unused)
struct drm_i915_private *dev_priv = dev->dev_private;
struct intel_engine_cs *ring;
struct intel_context *ctx;
+ bool exl_enabled = intel_enable_execlists(dev);
int ret, i;
ret = mutex_lock_interruptible(&dev->struct_mutex);
@@ -1735,7 +1742,7 @@ static int i915_context_status(struct seq_file *m, void
*unused)
}
list_for_each_entry(ctx, &dev_priv->context_list, link) {
- if (ctx->render_obj == NULL)
+ if (!exl_enabled && ctx->render_obj == NULL)
continue;
seq_puts(m, "HW context ");
@@ -1744,7 +1751,22 @@ static int i915_context_status(struct seq_file *m, void
*unused)
if (ring->default_context == ctx)
seq_printf(m, "(default context %s) ",
ring->name);
- describe_obj(m, ctx->render_obj);
+ if (exl_enabled) {
+ seq_putc(m, '\n');
+ for_each_ring(ring, dev_priv, i) {
+ struct drm_i915_gem_object *ctx_obj =
ctx->engine[i].obj;
+ struct intel_ringbuffer *ringbuf =
ctx->engine[i].ringbuf;
+
+ seq_printf(m, "%s: ", ring->name);
+ if (ctx_obj)
+ describe_obj(m, ctx_obj);
+ if (ringbuf)
+ describe_ctx_ringbuf(m, ringbuf);
+ seq_putc(m, '\n');
+ }
+ } else
+ describe_obj(m, ctx->render_obj);
+
seq_putc(m, '\n');
}
--
1.9.0
_______________________________________________
Intel-gfx mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/intel-gfx