[Mesa-dev] [PATCH 34/53] i965/drm: Drop GEM_SW_FINISH stuff.

Kenneth Graunke kenneth at whitecape.org
Wed Apr 5 00:10:24 UTC 2017


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.
---
 src/mesa/drivers/dri/i965/intel_bufmgr_gem.c | 24 ------------------------
 1 file changed, 24 deletions(-)

diff --git a/src/mesa/drivers/dri/i965/intel_bufmgr_gem.c b/src/mesa/drivers/dri/i965/intel_bufmgr_gem.c
index 466d9776130..9412a66bc7a 100644
--- a/src/mesa/drivers/dri/i965/intel_bufmgr_gem.c
+++ b/src/mesa/drivers/dri/i965/intel_bufmgr_gem.c
@@ -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.
-- 
2.12.1



More information about the mesa-dev mailing list