diff options
author | Chris Wilson <chris@chris-wilson.co.uk> | 2017-12-14 07:26:13 -0500 |
---|---|---|
committer | Chris Wilson <chris@chris-wilson.co.uk> | 2017-12-14 09:56:53 -0500 |
commit | 84ef3a727e32ac32380e28198c3fdc6dcf941ec6 (patch) | |
tree | 44a4200401e2906b31b418905bb8bfd8e153c929 /drivers | |
parent | fe66e92888a1cc0275d98be2d62ba81a097ec3f5 (diff) |
drm/i915: Show engine state when hangcheck detects a stall
Knowing the state of the engine when hangcheck thinks it is stalling is
useful for both debugging hangcheck itself and the potential cause of an
unwanted stall.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Cc: Mika Kuoppala <mika.kuoppala@linux.intel.com>
Reviewed-by: Joonas Lahtinen <joonas.lahtinen@linux.intel.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20171214122613.26134-1-chris@chris-wilson.co.uk
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/gpu/drm/i915/intel_hangcheck.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/gpu/drm/i915/intel_hangcheck.c b/drivers/gpu/drm/i915/intel_hangcheck.c index 95bbb5a79c4f..0acd9dd3ed5c 100644 --- a/drivers/gpu/drm/i915/intel_hangcheck.c +++ b/drivers/gpu/drm/i915/intel_hangcheck.c | |||
@@ -349,13 +349,18 @@ static void hangcheck_accumulate_sample(struct intel_engine_cs *engine, | |||
349 | 349 | ||
350 | case ENGINE_ACTIVE_HEAD: | 350 | case ENGINE_ACTIVE_HEAD: |
351 | case ENGINE_ACTIVE_SUBUNITS: | 351 | case ENGINE_ACTIVE_SUBUNITS: |
352 | /* Seqno stuck with still active engine gets leeway, | 352 | /* |
353 | * Seqno stuck with still active engine gets leeway, | ||
353 | * in hopes that it is just a long shader. | 354 | * in hopes that it is just a long shader. |
354 | */ | 355 | */ |
355 | timeout = I915_SEQNO_DEAD_TIMEOUT; | 356 | timeout = I915_SEQNO_DEAD_TIMEOUT; |
356 | break; | 357 | break; |
357 | 358 | ||
358 | case ENGINE_DEAD: | 359 | case ENGINE_DEAD: |
360 | if (drm_debug & DRM_UT_DRIVER) { | ||
361 | struct drm_printer p = drm_debug_printer("hangcheck"); | ||
362 | intel_engine_dump(engine, &p, "%s", engine->name); | ||
363 | } | ||
359 | break; | 364 | break; |
360 | 365 | ||
361 | default: | 366 | default: |