summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/i915/i915_gem.c
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2010-12-06 00:04:18 +0300
committerChris Wilson <chris@chris-wilson.co.uk>2010-12-06 02:19:37 +0300
commit6bda10d152735c22baf1dcd92937420b4b0a359a (patch)
treefe8f05dd7489131bbdb7e8c28b4ca429fb0fb392 /drivers/gpu/drm/i915/i915_gem.c
parent0cdab21f9a1fca50dd27e488839f5a6578e333b2 (diff)
downloadlinux-6bda10d152735c22baf1dcd92937420b4b0a359a.tar.xz
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>
Diffstat (limited to 'drivers/gpu/drm/i915/i915_gem.c')
-rw-r--r--drivers/gpu/drm/i915/i915_gem.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/gpu/drm/i915/i915_gem.c b/drivers/gpu/drm/i915/i915_gem.c
index eeed2e99d247..8685b9279029 100644
--- a/drivers/gpu/drm/i915/i915_gem.c
+++ b/drivers/gpu/drm/i915/i915_gem.c
@@ -2484,6 +2484,9 @@ i915_gem_object_get_fence(struct drm_i915_gem_object *obj,
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 @@ i915_gem_object_get_fence(struct drm_i915_gem_object *obj,
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);