drm/i915: move a gtt flush to the correct place
authorDaniel Vetter <daniel.vetter@ffwll.ch>
Mon, 1 Feb 2010 12:59:16 +0000 (13:59 +0100)
committerEric Anholt <eric@anholt.net>
Mon, 22 Feb 2010 16:54:41 +0000 (11:54 -0500)
No functional change, because gtt flushing is a no-op. Still, try
to keep the bookkeeping accurate. The if is still slightly wrong
for with execbuf2 even i915-class hw doesn't always need a fence
reg for gpu access. But that's for somewhen lateron.

Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: Eric Anholt <eric@anholt.net>
drivers/gpu/drm/i915/i915_gem.c

index 4a141993a37a2ff1bf883211f95f8fd28466af0d..a236bfb30844271eedb9ff5c18c7bdcdfdc6f88f 100644 (file)
@@ -2552,12 +2552,12 @@ i915_gem_object_put_fence_reg(struct drm_gem_object *obj)
                int ret;
 
                i915_gem_object_flush_gpu_write_domain(obj);
-               i915_gem_object_flush_gtt_write_domain(obj);
                ret = i915_gem_object_wait_rendering(obj);
                if (ret != 0)
                        return ret;
        }
 
+       i915_gem_object_flush_gtt_write_domain(obj);
        i915_gem_clear_fence_reg (obj);
 
        return 0;