i965/drm: Drop GEM_SW_FINISH stuff.
authorKenneth Graunke <kenneth@whitecape.org>
Mon, 3 Apr 2017 06:35:27 +0000 (23:35 -0700)
committerKenneth Graunke <kenneth@whitecape.org>
Mon, 10 Apr 2017 21:31:49 +0000 (14:31 -0700)
This is only useful when doing an incoherent CPU mapping of the current
scanout buffer.  That's a terrible plan, so we never do it.  We always
use an uncached GTT map.

So, this is useless.  Drop the code.

Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk>
Acked-by: Jason Ekstrand <jason@jlekstrand.net>
src/mesa/drivers/dri/i965/intel_bufmgr_gem.c

index dc8129e..39489e6 100644 (file)
@@ -235,9 +235,6 @@ struct _drm_bacon_bo_gem {
         * drm_bacon_bufmgr_check_aperture in the common case.
         */
        int reloc_tree_size;
-
-       /** Flags that we may need to do the SW_FINISH ioctl on unmap. */
-       bool mapped_cpu_write;
 };
 
 static unsigned int
@@ -1160,9 +1157,6 @@ drm_bacon_bo_map(drm_bacon_bo *bo, int write_enable)
                    strerror(errno));
        }
 
-       if (write_enable)
-               bo_gem->mapped_cpu_write = true;
-
        drm_bacon_gem_bo_mark_mmaps_incoherent(bo);
        VG(VALGRIND_MAKE_MEM_DEFINED(bo_gem->mem_virtual, bo->size));
        pthread_mutex_unlock(&bufmgr->lock);
@@ -1342,24 +1336,6 @@ drm_bacon_bo_unmap(drm_bacon_bo *bo)
                return 0;
        }
 
-       if (bo_gem->mapped_cpu_write) {
-               struct drm_i915_gem_sw_finish sw_finish;
-
-               /* Cause a flush to happen if the buffer's pinned for
-                * scanout, so the results show up in a timely manner.
-                * Unlike GTT set domains, this only does work if the
-                * buffer should be scanout-related.
-                */
-               memclear(sw_finish);
-               sw_finish.handle = bo_gem->gem_handle;
-               ret = drmIoctl(bufmgr->fd,
-                              DRM_IOCTL_I915_GEM_SW_FINISH,
-                              &sw_finish);
-               ret = ret == -1 ? -errno : 0;
-
-               bo_gem->mapped_cpu_write = false;
-       }
-
        /* We need to unmap after every innovation as we cannot track
         * an open vma for every bo as that will exhaust the system
         * limits and cause later failures.