intel: Update the needs_fence flag of buffers on the validate list.
authorEric Anholt <eric@anholt.net>
Wed, 3 Mar 2010 18:07:27 +0000 (10:07 -0800)
committerEric Anholt <eric@anholt.net>
Wed, 3 Mar 2010 18:08:44 +0000 (10:08 -0800)
Fixes fbo-copyteximage on i915 with texture tiling and execbuf2 fenced
relocs.

intel/intel_bufmgr_gem.c

index d40e95b..7ccadd2 100644 (file)
@@ -383,8 +383,12 @@ drm_intel_add_validate_buffer2(drm_intel_bo *bo, int need_fence)
        drm_intel_bo_gem *bo_gem = (drm_intel_bo_gem *)bo;
        int index;
 
-       if (bo_gem->validate_index != -1)
+       if (bo_gem->validate_index != -1) {
+               if (need_fence)
+                       bufmgr_gem->exec2_objects[bo_gem->validate_index].flags |=
+                               EXEC_OBJECT_NEEDS_FENCE;
                return;
+       }
 
        /* Extend the array of validation entries as necessary. */
        if (bufmgr_gem->exec_count == bufmgr_gem->exec_size) {