From: Eric Anholt Date: Thu, 27 Feb 2014 18:05:39 +0000 (-0800) Subject: i965: Always use CPU mappings for BOs on LLC platforms. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=1990da2568a0da79c6011bd83e7f7fb8bb099827;p=mesa.git i965: Always use CPU mappings for BOs on LLC platforms. It looks like there's no big difference for write-only workloads, but using a CPU map means that if they happen to read without having set the MAP_READ_BIT, they get 100x the performance for those reads. Reviewed-by: Kenneth Graunke --- diff --git a/src/mesa/drivers/dri/i965/intel_buffer_objects.c b/src/mesa/drivers/dri/i965/intel_buffer_objects.c index e496836905a..260308a80a2 100644 --- a/src/mesa/drivers/dri/i965/intel_buffer_objects.c +++ b/src/mesa/drivers/dri/i965/intel_buffer_objects.c @@ -429,7 +429,7 @@ intel_bufferobj_map_range(struct gl_context * ctx, if (access & GL_MAP_UNSYNCHRONIZED_BIT) drm_intel_gem_bo_map_unsynchronized(intel_obj->buffer); - else if (!(access & GL_MAP_READ_BIT)) { + else if (!brw->has_llc && !(access & GL_MAP_READ_BIT)) { drm_intel_gem_bo_map_gtt(intel_obj->buffer); intel_bufferobj_mark_inactive(intel_obj); } else {