drm/i915/gt: Show the cumulative context runtime in engine debug
authorChris Wilson <chris@chris-wilson.co.uk>
Tue, 18 Feb 2020 16:21:40 +0000 (16:21 +0000)
committerChris Wilson <chris@chris-wilson.co.uk>
Tue, 18 Feb 2020 21:22:32 +0000 (21:22 +0000)
As we have the total runtime known to us, show it when dumping the
engine state for debug.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Reviewed-by: Matthew Auld <matthew.auld@intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200218162150.1300405-2-chris@chris-wilson.co.uk
drivers/gpu/drm/i915/gt/intel_engine_cs.c

index f6f5e1ec48fca532b7bfbc2bc5d31d684d68e551..e46e55354e95e63dc49ad9117d939d03c848a45b 100644 (file)
@@ -1376,7 +1376,7 @@ static void intel_engine_print_registers(struct intel_engine_cs *engine,
                execlists_active_lock_bh(execlists);
                rcu_read_lock();
                for (port = execlists->active; (rq = *port); port++) {
-                       char hdr[80];
+                       char hdr[160];
                        int len;
 
                        len = snprintf(hdr, sizeof(hdr),
@@ -1386,10 +1386,12 @@ static void intel_engine_print_registers(struct intel_engine_cs *engine,
                                struct intel_timeline *tl = get_timeline(rq);
 
                                len += snprintf(hdr + len, sizeof(hdr) - len,
-                                               "ring:{start:%08x, hwsp:%08x, seqno:%08x}, ",
+                                               "ring:{start:%08x, hwsp:%08x, seqno:%08x, runtime:%llums}, ",
                                                i915_ggtt_offset(rq->ring->vma),
                                                tl ? tl->hwsp_offset : 0,
-                                               hwsp_seqno(rq));
+                                               hwsp_seqno(rq),
+                                               DIV_ROUND_CLOSEST_ULL(intel_context_get_total_runtime_ns(rq->context),
+                                                                     1000 * 1000));
 
                                if (tl)
                                        intel_timeline_put(tl);