summaryrefslogtreecommitdiffstats
path: root/drivers/gpu/drm/drm_gem_ttm_helper.c
diff options
context:
space:
mode:
authorDmitry Osipenko <dmitry.osipenko@collabora.com>2022-10-17 20:22:11 +0300
committerDmitry Osipenko <dmitry.osipenko@collabora.com>2022-10-18 01:21:38 +0300
commit79e2cf2e7a193473dfb0da3b9b869682b43dc60f (patch)
tree4edf97bf0cf01f1c7b3ba1dde6b6134e9053b9c9 /drivers/gpu/drm/drm_gem_ttm_helper.c
parent19d6634d8789573a9212ce78dbb4348ffd4f7f78 (diff)
downloadlinux-stable-79e2cf2e7a193473dfb0da3b9b869682b43dc60f.tar.gz
linux-stable-79e2cf2e7a193473dfb0da3b9b869682b43dc60f.tar.bz2
linux-stable-79e2cf2e7a193473dfb0da3b9b869682b43dc60f.zip
drm/gem: Take reservation lock for vmap/vunmap operations
The new common dma-buf locking convention will require buffer importers to hold the reservation lock around mapping operations. Make DRM GEM core to take the lock around the vmapping operations and update DRM drivers to use the locked functions for the case where DRM core now holds the lock. This patch prepares DRM core and drivers to the common dynamic dma-buf locking convention. Acked-by: Christian König <christian.koenig@amd.com> Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com> Link: https://patchwork.freedesktop.org/patch/msgid/20221017172229.42269-4-dmitry.osipenko@collabora.com
Diffstat (limited to 'drivers/gpu/drm/drm_gem_ttm_helper.c')
-rw-r--r--drivers/gpu/drm/drm_gem_ttm_helper.c9
1 files changed, 1 insertions, 8 deletions
diff --git a/drivers/gpu/drm/drm_gem_ttm_helper.c b/drivers/gpu/drm/drm_gem_ttm_helper.c
index e5fc875990c4..d5962a34c01d 100644
--- a/drivers/gpu/drm/drm_gem_ttm_helper.c
+++ b/drivers/gpu/drm/drm_gem_ttm_helper.c
@@ -64,13 +64,8 @@ int drm_gem_ttm_vmap(struct drm_gem_object *gem,
struct iosys_map *map)
{
struct ttm_buffer_object *bo = drm_gem_ttm_of_gem(gem);
- int ret;
-
- dma_resv_lock(gem->resv, NULL);
- ret = ttm_bo_vmap(bo, map);
- dma_resv_unlock(gem->resv);
- return ret;
+ return ttm_bo_vmap(bo, map);
}
EXPORT_SYMBOL(drm_gem_ttm_vmap);
@@ -87,9 +82,7 @@ void drm_gem_ttm_vunmap(struct drm_gem_object *gem,
{
struct ttm_buffer_object *bo = drm_gem_ttm_of_gem(gem);
- dma_resv_lock(gem->resv, NULL);
ttm_bo_vunmap(bo, map);
- dma_resv_unlock(gem->resv);
}
EXPORT_SYMBOL(drm_gem_ttm_vunmap);