<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#c10">Comment # 10</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:nicolashillegeer@gmail.com" title="Nicolas Hillegeer <nicolashillegeer@gmail.com>"> <span class="fn">Nicolas Hillegeer</span></a>
</span></b>
<pre><span class="quote">> 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);</span >
Btw I applied this path manually, since I don't know the right magic
incantation for it. It seems that we have slightly different versions of the
kernel (mine is 3.9-rc8, here is the complete, adjusted i915_gem_init_hw
function I'm currently compiling:
int
i915_gem_init_hw(struct drm_device *dev)
{
drm_i915_private_t *dev_priv = dev->dev_private;
int ret;
if (INTEL_INFO(dev)->gen < 6 && !intel_enable_gtt())
return -EIO;
if (IS_HASWELL(dev) && (I915_READ(0x120010) == 1))
I915_WRITE(0x9008, I915_READ(0x9008) | 0xf0000);
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);
ret = i915_gem_init_rings(dev);
if (ret)
return ret;
/*
* XXX: There was some w/a described somewhere suggesting loading
* contexts before PPGTT.
*/
i915_gem_context_init(dev);
i915_gem_init_ppgtt(dev);
return 0;
}
Is it still ok?</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>