projects
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
64b88af
)
drm/virtio: Check whether transferred 2D BO is shmem
author
Dmitry Osipenko
<dmitry.osipenko@collabora.com>
Thu, 30 Jun 2022 20:07:19 +0000
(23:07 +0300)
committer
Gerd Hoffmann
<kraxel@redhat.com>
Tue, 19 Jul 2022 12:40:57 +0000
(14:40 +0200)
Transferred 2D BO always must be a shmem BO. Add check for that to prevent
NULL dereference if userspace passes a VRAM BO.
Cc: stable@vger.kernel.org
Reviewed-by: Emil Velikov <emil.l.velikov@gmail.com>
Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
Link:
http://patchwork.freedesktop.org/patch/msgid/20220630200726.1884320-3-dmitry.osipenko@collabora.com
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
drivers/gpu/drm/virtio/virtgpu_vq.c
patch
|
blob
|
history
diff --git
a/drivers/gpu/drm/virtio/virtgpu_vq.c
b/drivers/gpu/drm/virtio/virtgpu_vq.c
index b7529b2b9883260bf93ab5cb4f7777d06079e288..1262fd0b3bef3e2ff14be2bf2d51d063f1786563 100644
(file)
--- a/
drivers/gpu/drm/virtio/virtgpu_vq.c
+++ b/
drivers/gpu/drm/virtio/virtgpu_vq.c
@@
-597,7
+597,7
@@
void virtio_gpu_cmd_transfer_to_host_2d(struct virtio_gpu_device *vgdev,
bool use_dma_api = !virtio_has_dma_quirk(vgdev->vdev);
struct virtio_gpu_object_shmem *shmem = to_virtio_gpu_shmem(bo);
- if (use_dma_api)
+ if (
virtio_gpu_is_shmem(bo) &&
use_dma_api)
dma_sync_sgtable_for_device(vgdev->vdev->dev.parent,
shmem->pages, DMA_TO_DEVICE);