[PATCH 3/3] drm/i915: Include timelines in error capture

John.C.Harrison at Intel.com John.C.Harrison at Intel.com
Fri Feb 3 01:10:43 UTC 2023


From: John Harrison <John.C.Harrison at Intel.com>

The seqno value actually written out to memory is no longer in the
regular HWSP and therefore no longer visible in an error capture.
Instead, it is now in its own private timeline buffer. So include that
buffer in the capture too.

Signed-off-by: John Harrison <John.C.Harrison at Intel.com>
---
 drivers/gpu/drm/i915/i915_gpu_error.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c b/drivers/gpu/drm/i915/i915_gpu_error.c
index 904f21e1380cd..66bd4c1162f79 100644
--- a/drivers/gpu/drm/i915/i915_gpu_error.c
+++ b/drivers/gpu/drm/i915/i915_gpu_error.c
@@ -1550,6 +1550,7 @@ engine_coredump_add_context(struct intel_engine_coredump *ee,
 	 */
 	vma = capture_vma(vma, ce->ring->vma, "ring", gfp);
 	vma = capture_vma(vma, ce->state, "HW context", gfp);
+	vma = capture_vma(vma, ce->timeline->hwsp_ggtt, "ctxt timeline HWSP", gfp);
 
 	return vma;
 }
@@ -1572,6 +1573,8 @@ intel_engine_coredump_add_request(struct intel_engine_coredump *ee,
 	 */
 	vma = capture_vma_snapshot(vma, rq->batch_res, gfp, "batch");
 	vma = capture_user(vma, rq, gfp);
+	if (rq->timeline != rq->context->timeline)
+		vma = capture_vma(vma, rq->timeline->hwsp_ggtt, "rq timeline HWSP", gfp);
 
 	ee->rq_head = rq->head;
 	ee->rq_post = rq->postfix;
-- 
2.39.1



More information about the dri-devel mailing list