OSDN Git Service

drm/prime: Prepare to dynamic dma-buf locking specification
authorDmitry Osipenko <dmitry.osipenko@collabora.com>
Mon, 17 Oct 2022 17:22:12 +0000 (20:22 +0300)
committerDmitry Osipenko <dmitry.osipenko@collabora.com>
Mon, 17 Oct 2022 22:21:41 +0000 (01:21 +0300)
Prepare DRM prime core to the common dynamic dma-buf locking convention
by starting to use the unlocked versions of dma-buf API functions.

Reviewed-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-5-dmitry.osipenko@collabora.com
drivers/gpu/drm/drm_prime.c

index a3f1806..ef50c4e 100644 (file)
@@ -936,7 +936,7 @@ struct drm_gem_object *drm_gem_prime_import_dev(struct drm_device *dev,
 
        get_dma_buf(dma_buf);
 
-       sgt = dma_buf_map_attachment(attach, DMA_BIDIRECTIONAL);
+       sgt = dma_buf_map_attachment_unlocked(attach, DMA_BIDIRECTIONAL);
        if (IS_ERR(sgt)) {
                ret = PTR_ERR(sgt);
                goto fail_detach;
@@ -954,7 +954,7 @@ struct drm_gem_object *drm_gem_prime_import_dev(struct drm_device *dev,
        return obj;
 
 fail_unmap:
-       dma_buf_unmap_attachment(attach, sgt, DMA_BIDIRECTIONAL);
+       dma_buf_unmap_attachment_unlocked(attach, sgt, DMA_BIDIRECTIONAL);
 fail_detach:
        dma_buf_detach(dma_buf, attach);
        dma_buf_put(dma_buf);
@@ -1052,7 +1052,7 @@ void drm_prime_gem_destroy(struct drm_gem_object *obj, struct sg_table *sg)
 
        attach = obj->import_attach;
        if (sg)
-               dma_buf_unmap_attachment(attach, sg, DMA_BIDIRECTIONAL);
+               dma_buf_unmap_attachment_unlocked(attach, sg, DMA_BIDIRECTIONAL);
        dma_buf = attach->dmabuf;
        dma_buf_detach(attach->dmabuf, attach);
        /* remove the reference */