[Bug 83677] [HSW] GPU HANG: ecode 0:0x87d3bffa on ctx load

bugzilla-daemon at freedesktop.org bugzilla-daemon at freedesktop.org
Wed Oct 22 12:35:44 PDT 2014


https://bugs.freedesktop.org/show_bug.cgi?id=83677

--- Comment #56 from Chris Wilson <chris at chris-wilson.co.uk> ---
(In reply to Rainer Hochecker from comment #55)
> This patch seems to introduce new problems for me. I place fences into the
> render pipeline and after a glFlush I don't get all of them into the
> signaled state. This procedure worked without this patch and with other
> driver like NVidia and AMD so the issue most likely got introduced with this
> huge patch.


diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index 6bf2dcf67bf2..158abb4c322a 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -2544,13 +2544,16 @@ i915_gem_idle_work_handler(struct work_struct *work)
 static int
 i915_gem_object_flush_active(struct drm_i915_gem_object *obj)
 {
-       int ret;
+       int ret, n;

        if (!obj->active)
                return 0;

-       if (obj->last_write.request) {
-               ret = i915_request_emit_breadcrumb(obj->last_write.request);
+       for (n = 0; < I915_NUM_ENGINES; n++) {
+               if (obj->last_read[n].request == NULL)
+                       continue;
+
+               ret = i915_request_emit_breadcrumb(obj->last_read[n].request);
                if (ret)
                        return ret;


which I hope is overkill. If you have a snippet demonstrating the fences I can
trace through mesa and see if there is a more precise flush we can do.

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are on the CC list for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/intel-gfx-bugs/attachments/20141022/0c3745eb/attachment.html>


More information about the intel-gfx-bugs mailing list