<html>
<head>
<base href="https://bugs.freedesktop.org/" />
</head>
<body>
<p>
<div>
<b><a class="bz_bug_link
bz_status_NEEDINFO "
title="NEEDINFO --- - [gm45 regression] [drm:init_ring_common]: *ERROR* render ring initialization failed"
href="https://bugs.freedesktop.org/show_bug.cgi?id=76554#c70">Comment # 70</a>
on <a class="bz_bug_link
bz_status_NEEDINFO "
title="NEEDINFO --- - [gm45 regression] [drm:init_ring_common]: *ERROR* render ring initialization failed"
href="https://bugs.freedesktop.org/show_bug.cgi?id=76554">bug 76554</a>
from <span class="vcard"><a class="email" href="mailto:chris@chris-wilson.co.uk" title="Chris Wilson <chris@chris-wilson.co.uk>"> <span class="fn">Chris Wilson</span></a>
</span></b>
<pre>Here's something you can try on top of that branch:
diff --git a/drivers/gpu/drm/i915/intel_ringbuffer.c
b/drivers/gpu/drm/i915/intel_ringbuffer.c
index 9ee4ab306134..4f3397f87152 100644
--- a/drivers/gpu/drm/i915/intel_ringbuffer.c
+++ b/drivers/gpu/drm/i915/intel_ringbuffer.c
@@ -539,13 +539,13 @@ reset:
goto reset;
DRM_ERROR("%s initialization failed "
- "ctl %08x (valid? %d) head %08x tail %08x start %08x
[expected %08lx]\n",
+ "ctl %08x (valid? %d) head %08x tail %08x start %08x
[expected %08lx], fudging\n",
ring->name,
I915_READ_CTL(ring), I915_READ_CTL(ring) &
RING_VALID,
I915_READ_HEAD(ring), I915_READ_TAIL(ring),
I915_READ_START(ring), (unsigned
long)i915_gem_obj_ggtt_offset(obj));
- ret = -EIO;
- goto out;
+
+ ring->write_tail(ring, I915_READ_HEAD(ring) & HEAD_ADDR);
}
if (!drm_core_check_feature(ring->dev, DRIVER_MODESET))
The idea is to ignore the failure and see if we can program the GPU anyway.</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 on the CC list for the bug.</li>
</ul>
</body>
</html>