<html>
<head>
<base href="https://bugs.freedesktop.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEW "
title="NEW --- - [snb] GTT mapping fails after GPU hang"
href="https://bugs.freedesktop.org/show_bug.cgi?id=63921#c8">Comment # 8</a>
on <a class="bz_bug_link
bz_status_NEW "
title="NEW --- - [snb] GTT mapping fails after GPU hang"
href="https://bugs.freedesktop.org/show_bug.cgi?id=63921">bug 63921</a>
from <span class="vcard"><a class="email" href="mailto:ben@bwidawsk.net" title="Ben Widawsky <ben@bwidawsk.net>"> <span class="fn">Ben Widawsky</span></a>
</span></b>
<pre>(In reply to <a href="show_bug.cgi?id=63921#c7">comment #7</a>)
<span class="quote">> More interesting fail:
>
> [ 4366.361686] [drm:i915_hangcheck_hung] *ERROR* Hangcheck timer elapsed...
> GPU hung
> [ 4366.361694] [drm] capturing error event; look for more information
> in/sys/kernel/debug/dri/0/i915_error_state
> [ 4366.871407] [drm:i915_reset] *ERROR* Failed to reset chip.
> [ 4376.364660] [drm:i915_gem_wait_for_error] *ERROR* Timed out waiting for
> the gpu reset to complete
>
>
> Pity we can't get the i915_error_state back, but if you can isolate the
> cause of the hang that will be enough for the libva (or whoever to work on).</span >
Please try this specifically for the reset hang:
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index 8539177..df9dfa5 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -4036,6 +4036,10 @@ i915_gem_init_hw(struct drm_device *dev)
I915_WRITE(GEN7_MSG_CTL, temp);
}
+ DRM_ERROR("Forcing no wait on PCH (SNB ONLY)\n");
+ I915_WRITE(ILK_DISPLAY_CHICKEN2,
+ I915_READ(ILK_DISPLAY_CHICKEN2) & ~(0x3 << 14));
+
i915_gem_l3_remap(dev);
i915_gem_init_swizzling(dev);</pre>
</div>
</p>
<hr>
<span>You are receiving this mail because:</span>
<ul>
<li>You are the QA Contact for the bug.</li>
<li>You are the assignee for the bug.</li>
</ul>
</body>
</html>