drm/i915: Completely disable fence pipelining.
I'm still seeing tiling corruption of PutImage and CopyArea (I think)
under mutter on pnv, so obviously the pipelining logic is deeply flawed.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index eeed2e9..8685b92 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -2484,6 +2484,9 @@
struct drm_i915_fence_reg *reg;
int ret;
+ /* XXX disable pipelining. There are bugs. Shocking. */
+ pipelined = NULL;
+
/* Just update our place in the LRU if our fence is getting reused. */
if (obj->fence_reg != I915_FENCE_REG_NONE) {
reg = &dev_priv->fence_regs[obj->fence_reg];
@@ -2556,9 +2559,8 @@
if (old->tiling_mode)
i915_gem_release_mmap(old);
- /* XXX The pipelined change over appears to be incoherent. */
ret = i915_gem_object_flush_fence(old,
- NULL, //pipelined,
+ pipelined,
interruptible);
if (ret) {
drm_gem_object_unreference(&old->base);