[Bug 88191] [PNV Bisected]igt/gem_exec_big fails
bugzilla-daemon at freedesktop.org
bugzilla-daemon at freedesktop.org
Thu Jan 8 06:36:47 PST 2015
https://bugs.freedesktop.org/show_bug.cgi?id=88191
--- Comment #1 from Chris Wilson <chris at chris-wilson.co.uk> ---
So far it looks like it has uncovered a nasty coherency issue between pwrite +
set-to-domain + relocate + pread.
Forcing pwrite to use GTT, makes it work, as does removing the user
set-to-domain. It also seems to be timing dependent (but it fails quite
reproducibly), adding printk also makes it work.
Throwing i915_gem_chipset_flush() around is not sufficient. But...
diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c
b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
index c7f4048..831cef2 100644
--- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
@@ -332,6 +332,8 @@ relocate_entry_gtt(struct drm_i915_gem_object *obj,
if (ret)
return ret;
+ mb();
+
/* Map the page containing the relocation we're going to perform. */
offset = i915_gem_obj_ggtt_offset(obj);
offset += reloc->offset;
@@ -355,6 +357,7 @@ relocate_entry_gtt(struct drm_i915_gem_object *obj,
io_mapping_unmap_atomic(reloc_page);
+ mb();
return 0;
}
crazily enough does. And notably
diff --git a/drivers/gpu/drm/i915/i915_gem_execbuffer.c
b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
index c7f4048..3da285a 100644
--- a/drivers/gpu/drm/i915/i915_gem_execbuffer.c
+++ b/drivers/gpu/drm/i915/i915_gem_execbuffer.c
@@ -880,7 +880,7 @@ vmas_move_to_rq(struct eb_vmas *eb,
i915_gem_chipset_flush(rq->i915);
if (flush_domains & I915_GEM_DOMAIN_GTT)
- wmb();
+ mb();
/* 2: invalidate the caches from this ring after emitting semaphores */
ret = i915_request_emit_flush(rq, I915_INVALIDATE_CACHES);
does not. Hmm.
--
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/20150108/3ac6067e/attachment.html>
More information about the intel-gfx-bugs
mailing list