[PATCH 01/27] ilk-ci-hax

Chris Wilson chris at chris-wilson.co.uk
Sat Apr 22 20:38:33 UTC 2017


---
 drivers/gpu/drm/i915/i915_gem_request.c  | 9 ++++++++-
 drivers/gpu/drm/i915/intel_breadcrumbs.c | 5 +++--
 2 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/i915/i915_gem_request.c b/drivers/gpu/drm/i915/i915_gem_request.c
index e2ec42b2bf24..9a5f66e7fbe7 100644
--- a/drivers/gpu/drm/i915/i915_gem_request.c
+++ b/drivers/gpu/drm/i915/i915_gem_request.c
@@ -213,6 +213,11 @@ static int reset_all_global_seqno(struct drm_i915_private *i915, u32 seqno)
 				cond_resched();
 		}
 
+		DRM_DEBUG_DRIVER("%s: wrapping from %x to %x\n",
+				 engine->name,
+				 intel_engine_get_seqno(engine),
+				 seqno);
+
 		/* Finally reset hw state */
 		intel_engine_init_global_seqno(engine, seqno);
 		tl->seqno = seqno;
@@ -423,7 +428,9 @@ void __i915_gem_request_submit(struct drm_i915_gem_request *request)
 
 	seqno = timeline_get_seqno(timeline);
 	GEM_BUG_ON(!seqno);
-	GEM_BUG_ON(i915_seqno_passed(intel_engine_get_seqno(engine), seqno));
+	WARN_ONCE(i915_seqno_passed(intel_engine_get_seqno(engine), seqno),
+		  "%s: seqno went backwards! next=%x, engine=%x\n",
+		  engine->name, seqno, intel_engine_get_seqno(engine));
 
 	/* We may be recursing from the signal callback of another i915 fence */
 	spin_lock_nested(&request->lock, SINGLE_DEPTH_NESTING);
diff --git a/drivers/gpu/drm/i915/intel_breadcrumbs.c b/drivers/gpu/drm/i915/intel_breadcrumbs.c
index 9ccbf26124c6..84a826a8ecdf 100644
--- a/drivers/gpu/drm/i915/intel_breadcrumbs.c
+++ b/drivers/gpu/drm/i915/intel_breadcrumbs.c
@@ -64,10 +64,11 @@ static unsigned long wait_timeout(void)
 
 static noinline void missed_breadcrumb(struct intel_engine_cs *engine)
 {
-	DRM_DEBUG_DRIVER("%s missed breadcrumb at %pF, irq posted? %s\n",
+	DRM_DEBUG_DRIVER("%s missed breadcrumb at %pF, irq posted? %s, current seqno=%x\n",
 			 engine->name, __builtin_return_address(0),
 			 yesno(test_bit(ENGINE_IRQ_BREADCRUMB,
-					&engine->irq_posted)));
+					&engine->irq_posted)),
+			 intel_engine_get_seqno(engine));
 
 	set_bit(engine->id, &engine->i915->gpu_error.missed_irq_rings);
 }
-- 
2.11.0



More information about the Intel-gfx-trybot mailing list