aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristian König <christian.koenig@amd.com>2022-07-15 10:34:13 +0200
committerChristian König <christian.koenig@amd.com>2022-09-26 12:07:01 +0200
commitd6d36cf2f8efd78455286050d6d8f9a8969d63b3 (patch)
treefe177b0324de12d5a1c35d8210f4c7e401017c28
parentdrm/ast: make ast_modeset static (diff)
downloadlinux-dev-d6d36cf2f8efd78455286050d6d8f9a8969d63b3.tar.xz
linux-dev-d6d36cf2f8efd78455286050d6d8f9a8969d63b3.zip
drm/ttm: add dma_resv_assert_held() calls to vmap/vunmap
Let's make sure nobody is calling those functions without holding the appropriate locks. Signed-off-by: Christian König <christian.koenig@amd.com> Reviewed-by: Dmitry Osipenko <dmitry.osipenko@collabora.com> Link: https://patchwork.freedesktop.org/patch/msgid/20220715111533.467012-2-christian.koenig@amd.com
-rw-r--r--drivers/gpu/drm/ttm/ttm_bo_util.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/gpu/drm/ttm/ttm_bo_util.c b/drivers/gpu/drm/ttm/ttm_bo_util.c
index 1530982338e9..497ee1fdbad7 100644
--- a/drivers/gpu/drm/ttm/ttm_bo_util.c
+++ b/drivers/gpu/drm/ttm/ttm_bo_util.c
@@ -402,6 +402,8 @@ int ttm_bo_vmap(struct ttm_buffer_object *bo, struct iosys_map *map)
struct ttm_resource *mem = bo->resource;
int ret;
+ dma_resv_assert_held(bo->base.resv);
+
ret = ttm_mem_io_reserve(bo->bdev, mem);
if (ret)
return ret;
@@ -460,6 +462,8 @@ void ttm_bo_vunmap(struct ttm_buffer_object *bo, struct iosys_map *map)
{
struct ttm_resource *mem = bo->resource;
+ dma_resv_assert_held(bo->base.resv);
+
if (iosys_map_is_null(map))
return;