summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2016-09-09 13:11:59 (GMT)
committerChris Wilson <chris@chris-wilson.co.uk>2016-09-09 13:23:07 (GMT)
commit32c2b4bda62839c527b47bc843aebcdd535c9519 (patch)
treef9e27e592bcffd9034495a742910fbe54faa5640
parent80b5bdbdcbce6efd1083269616dc9efea3c63363 (diff)
downloadlinux-32c2b4bda62839c527b47bc843aebcdd535c9519.tar.xz
drm/i915: Avoid incrementing hangcheck whilst waiting for external fence
If we are waiting upon an external fence, from the pov of hangcheck the engine is stuck on the last submitted seqno. Currently we give a small increment to the hangcheck score in order to catch a stuck waiter / driver. Now that we both have an independent wait hangcheck and may be stuck waiting on an external fence, resetting the GPU has little effect on that external fence. As we cannot advance by resetting, skip incrementing the hangcheck score. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Cc: Mika Kuoppala <mika.kuoppala@intel.com> Reviewed-by: Mika Kuoppala <mika.kuoppala@intel.com> Link: http://patchwork.freedesktop.org/patch/msgid/20160909131201.16673-19-chris@chris-wilson.co.uk
-rw-r--r--drivers/gpu/drm/i915/i915_irq.c4
1 files changed, 0 insertions, 4 deletions
diff --git a/drivers/gpu/drm/i915/i915_irq.c b/drivers/gpu/drm/i915/i915_irq.c
index b76d45d..8462817 100644
--- a/drivers/gpu/drm/i915/i915_irq.c
+++ b/drivers/gpu/drm/i915/i915_irq.c
@@ -3099,10 +3099,6 @@ static void i915_hangcheck_elapsed(struct work_struct *work)
if (engine->hangcheck.seqno == seqno) {
if (i915_seqno_passed(seqno, submit)) {
engine->hangcheck.action = HANGCHECK_IDLE;
- if (busy) {
- /* Safeguard against driver failure */
- engine->hangcheck.score += BUSY;
- }
} else {
/* We always increment the hangcheck score
* if the engine is busy and still processing