From: Gerd Hoffmann Date: Wed, 17 Feb 2021 12:32:13 +0000 (+0100) Subject: drm/qxl: add lock asserts to qxl_bo_vmap_locked + qxl_bo_vunmap_locked X-Git-Tag: v5.13-rc1~123^2~14^2~53 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=0345bae1776b24e2b591f50b1bfe63001fd40efb;p=thirdparty%2Flinux.git drm/qxl: add lock asserts to qxl_bo_vmap_locked + qxl_bo_vunmap_locked Try avoid re-introducing locking bugs. Signed-off-by: Gerd Hoffmann Acked-by: Thomas Zimmermann Link: http://patchwork.freedesktop.org/patch/msgid/20210217123213.2199186-12-kraxel@redhat.com --- diff --git a/drivers/gpu/drm/qxl/qxl_object.c b/drivers/gpu/drm/qxl/qxl_object.c index 82c3bf195ad60..6e26d70f2f07a 100644 --- a/drivers/gpu/drm/qxl/qxl_object.c +++ b/drivers/gpu/drm/qxl/qxl_object.c @@ -162,6 +162,8 @@ int qxl_bo_vmap_locked(struct qxl_bo *bo, struct dma_buf_map *map) { int r; + dma_resv_assert_held(bo->tbo.base.resv); + if (bo->kptr) { bo->map_count++; goto out; @@ -236,6 +238,8 @@ fallback: void qxl_bo_vunmap_locked(struct qxl_bo *bo) { + dma_resv_assert_held(bo->tbo.base.resv); + if (bo->kptr == NULL) return; bo->map_count--;