[PATCH 2/2] drm/virtio: Use dma_buf from GEM object instance
Dmitry Osipenko
dmitry.osipenko at collabora.com
Wed Apr 16 06:40:28 UTC 2025
On 4/14/25 16:12, Thomas Zimmermann wrote:
> Avoid dereferencing struct drm_gem_object.import_attach for the
> imported dma-buf. The dma_buf field in the GEM object instance refers
> to the same buffer. Prepares to make import_attach optional.
>
> Signed-off-by: Thomas Zimmermann <tzimmermann at suse.de>
> ---
> drivers/gpu/drm/virtio/virtgpu_prime.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/gpu/drm/virtio/virtgpu_prime.c b/drivers/gpu/drm/virtio/virtgpu_prime.c
> index ce49282198cb..1118a0250279 100644
> --- a/drivers/gpu/drm/virtio/virtgpu_prime.c
> +++ b/drivers/gpu/drm/virtio/virtgpu_prime.c
> @@ -204,16 +204,15 @@ static void virtgpu_dma_buf_free_obj(struct drm_gem_object *obj)
> {
> struct virtio_gpu_object *bo = gem_to_virtio_gpu_obj(obj);
> struct virtio_gpu_device *vgdev = obj->dev->dev_private;
> - struct dma_buf_attachment *attach = obj->import_attach;
>
> if (drm_gem_is_imported(obj)) {
> - struct dma_buf *dmabuf = attach->dmabuf;
> + struct dma_buf *dmabuf = obj->dma_buf;
>
> dma_resv_lock(dmabuf->resv, NULL);
> virtgpu_dma_buf_unmap(bo);
> dma_resv_unlock(dmabuf->resv);
>
> - dma_buf_detach(dmabuf, attach);
> + dma_buf_detach(dmabuf, obj->import_attach);
> dma_buf_put(dmabuf);
> }
>
Reviewed-by: Dmitry Osipenko <dmitry.osipenko at collabora.com>
--
Best regards,
Dmitry
More information about the dri-devel
mailing list