summaryrefslogtreecommitdiff
path: root/drivers/gpu/drm/drm_prime.c
diff options
context:
space:
mode:
authorMaxime Ripard <mripard@kernel.org>2024-04-23 08:48:56 +0200
committerMaxime Ripard <mripard@kernel.org>2024-04-23 08:48:56 +0200
commitc058e7a8f8af355e4a441c89400a6e95a16320e5 (patch)
treeed96dcd06e69f508a3f8a112a29fd228289429a6 /drivers/gpu/drm/drm_prime.c
parent6221deb716b9d5397c09ba6567f7ae61d8cbeb98 (diff)
parent0208ca55aa9c9b997da1f5bc45c4e98916323f08 (diff)
Merge drm/drm-next into drm-misc-next
MaĆ­ra needs a backmerge to apply v3d patches, and Danilo for some nouveau patches. Signed-off-by: Maxime Ripard <mripard@kernel.org>
Diffstat (limited to 'drivers/gpu/drm/drm_prime.c')
-rw-r--r--drivers/gpu/drm/drm_prime.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/gpu/drm/drm_prime.c b/drivers/gpu/drm/drm_prime.c
index 7352bde299d5..03bd3c7bd0dc 100644
--- a/drivers/gpu/drm/drm_prime.c
+++ b/drivers/gpu/drm/drm_prime.c
@@ -582,7 +582,12 @@ int drm_gem_map_attach(struct dma_buf *dma_buf,
{
struct drm_gem_object *obj = dma_buf->priv;
- if (!obj->funcs->get_sg_table)
+ /*
+ * drm_gem_map_dma_buf() requires obj->get_sg_table(), but drivers
+ * that implement their own ->map_dma_buf() do not.
+ */
+ if (dma_buf->ops->map_dma_buf == drm_gem_map_dma_buf &&
+ !obj->funcs->get_sg_table)
return -ENOSYS;
return drm_gem_pin(obj);