aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/i915/i915_gpu_error.c
diff options
context:
space:
mode:
authorDaniel Vetter <daniel.vetter@ffwll.ch>2014-11-18 07:27:07 -0500
committerDaniel Vetter <daniel.vetter@ffwll.ch>2014-11-18 10:23:13 -0500
commit77c1aa84de0096792de673aa1c64c36b38553cf5 (patch)
tree62eccc50004cd9d32236cd44782c7eff07f16fc4 /drivers/gpu/drm/i915/i915_gpu_error.c
parenteb45fa0b93e03b03848cd048dcc57648409c8125 (diff)
drm/i915: Don't print header in error state for non-existing CS
This goes back to commit 362b8af7ad1d91266aa4931e62be45c1e5cf753b Author: Ben Widawsky <benjamin.widawsky@intel.com> Date: Thu Jan 30 00:19:38 2014 -0800 drm/i915: Move per ring error state to ring_error Spotted while reading error states. Cc: Ben Widawsky <benjamin.widawsky@intel.com> Cc: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Daniel Vetter <daniel.vetter@intel.com>
Diffstat (limited to 'drivers/gpu/drm/i915/i915_gpu_error.c')
-rw-r--r--drivers/gpu/drm/i915/i915_gpu_error.c12
1 files changed, 7 insertions, 5 deletions
diff --git a/drivers/gpu/drm/i915/i915_gpu_error.c b/drivers/gpu/drm/i915/i915_gpu_error.c
index 89a2f3dbf956..82111b8ad374 100644
--- a/drivers/gpu/drm/i915/i915_gpu_error.c
+++ b/drivers/gpu/drm/i915/i915_gpu_error.c
@@ -242,11 +242,15 @@ static const char *hangcheck_action_to_str(enum intel_ring_hangcheck_action a)
242 242
243static void i915_ring_error_state(struct drm_i915_error_state_buf *m, 243static void i915_ring_error_state(struct drm_i915_error_state_buf *m,
244 struct drm_device *dev, 244 struct drm_device *dev,
245 struct drm_i915_error_ring *ring) 245 struct drm_i915_error_state *error,
246 int ring_idx)
246{ 247{
248 struct drm_i915_error_ring *ring = &error->ring[ring_idx];
249
247 if (!ring->valid) 250 if (!ring->valid)
248 return; 251 return;
249 252
253 err_printf(m, "%s command stream:\n", ring_str(ring_idx));
250 err_printf(m, " HEAD: 0x%08x\n", ring->head); 254 err_printf(m, " HEAD: 0x%08x\n", ring->head);
251 err_printf(m, " TAIL: 0x%08x\n", ring->tail); 255 err_printf(m, " TAIL: 0x%08x\n", ring->tail);
252 err_printf(m, " CTL: 0x%08x\n", ring->ctl); 256 err_printf(m, " CTL: 0x%08x\n", ring->ctl);
@@ -388,10 +392,8 @@ int i915_error_state_to_str(struct drm_i915_error_state_buf *m,
388 if (INTEL_INFO(dev)->gen == 7) 392 if (INTEL_INFO(dev)->gen == 7)
389 err_printf(m, "ERR_INT: 0x%08x\n", error->err_int); 393 err_printf(m, "ERR_INT: 0x%08x\n", error->err_int);
390 394
391 for (i = 0; i < ARRAY_SIZE(error->ring); i++) { 395 for (i = 0; i < ARRAY_SIZE(error->ring); i++)
392 err_printf(m, "%s command stream:\n", ring_str(i)); 396 i915_ring_error_state(m, dev, error, i);
393 i915_ring_error_state(m, dev, &error->ring[i]);
394 }
395 397
396 for (i = 0; i < error->vm_count; i++) { 398 for (i = 0; i < error->vm_count; i++) {
397 err_printf(m, "vm[%d]\n", i); 399 err_printf(m, "vm[%d]\n", i);