intel: We don't need to take the bufmgr lock whilst mapping.
parent
6293152eb0
commit
7ca558494d
|
@ -927,8 +927,6 @@ static int drm_intel_gem_bo_map(drm_intel_bo *bo, int write_enable)
|
|||
struct drm_i915_gem_set_domain set_domain;
|
||||
int ret;
|
||||
|
||||
pthread_mutex_lock(&bufmgr_gem->lock);
|
||||
|
||||
/* Allow recursive mapping. Mesa may recursively map buffers with
|
||||
* nested display loops.
|
||||
*/
|
||||
|
@ -952,7 +950,6 @@ static int drm_intel_gem_bo_map(drm_intel_bo *bo, int write_enable)
|
|||
"%s:%d: Error mapping buffer %d (%s): %s .\n",
|
||||
__FILE__, __LINE__, bo_gem->gem_handle,
|
||||
bo_gem->name, strerror(errno));
|
||||
pthread_mutex_unlock(&bufmgr_gem->lock);
|
||||
return ret;
|
||||
}
|
||||
bo_gem->mem_virtual = (void *)(uintptr_t) mmap_arg.addr_ptr;
|
||||
|
@ -977,12 +974,9 @@ static int drm_intel_gem_bo_map(drm_intel_bo *bo, int write_enable)
|
|||
fprintf(stderr, "%s:%d: Error setting to CPU domain %d: %s\n",
|
||||
__FILE__, __LINE__, bo_gem->gem_handle,
|
||||
strerror(errno));
|
||||
pthread_mutex_unlock(&bufmgr_gem->lock);
|
||||
return ret;
|
||||
}
|
||||
|
||||
pthread_mutex_unlock(&bufmgr_gem->lock);
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
@ -993,8 +987,6 @@ int drm_intel_gem_bo_map_gtt(drm_intel_bo *bo)
|
|||
struct drm_i915_gem_set_domain set_domain;
|
||||
int ret;
|
||||
|
||||
pthread_mutex_lock(&bufmgr_gem->lock);
|
||||
|
||||
/* Get a mapping of the buffer if we haven't before. */
|
||||
if (bo_gem->gtt_virtual == NULL) {
|
||||
struct drm_i915_gem_mmap_gtt mmap_arg;
|
||||
|
@ -1018,7 +1010,6 @@ int drm_intel_gem_bo_map_gtt(drm_intel_bo *bo)
|
|||
__FILE__, __LINE__,
|
||||
bo_gem->gem_handle, bo_gem->name,
|
||||
strerror(errno));
|
||||
pthread_mutex_unlock(&bufmgr_gem->lock);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -1034,7 +1025,6 @@ int drm_intel_gem_bo_map_gtt(drm_intel_bo *bo)
|
|||
__FILE__, __LINE__,
|
||||
bo_gem->gem_handle, bo_gem->name,
|
||||
strerror(errno));
|
||||
pthread_mutex_unlock(&bufmgr_gem->lock);
|
||||
return ret;
|
||||
}
|
||||
}
|
||||
|
@ -1061,8 +1051,6 @@ int drm_intel_gem_bo_map_gtt(drm_intel_bo *bo)
|
|||
strerror(errno));
|
||||
}
|
||||
|
||||
pthread_mutex_unlock(&bufmgr_gem->lock);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
@ -1077,9 +1065,7 @@ int drm_intel_gem_bo_unmap_gtt(drm_intel_bo *bo)
|
|||
|
||||
assert(bo_gem->gtt_virtual != NULL);
|
||||
|
||||
pthread_mutex_lock(&bufmgr_gem->lock);
|
||||
bo->virtual = NULL;
|
||||
pthread_mutex_unlock(&bufmgr_gem->lock);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
@ -1096,8 +1082,6 @@ static int drm_intel_gem_bo_unmap(drm_intel_bo *bo)
|
|||
|
||||
assert(bo_gem->mem_virtual != NULL);
|
||||
|
||||
pthread_mutex_lock(&bufmgr_gem->lock);
|
||||
|
||||
/* Cause a flush to happen if the buffer's pinned for scanout, so the
|
||||
* results show up in a timely manner.
|
||||
*/
|
||||
|
@ -1110,7 +1094,6 @@ static int drm_intel_gem_bo_unmap(drm_intel_bo *bo)
|
|||
ret = ret == -1 ? -errno : 0;
|
||||
|
||||
bo->virtual = NULL;
|
||||
pthread_mutex_unlock(&bufmgr_gem->lock);
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue