summaryrefslogtreecommitdiffstats
path: root/drivers/dma/ptdma/ptdma.h
diff options
context:
space:
mode:
authorZack Rusin <zackr@vmware.com>2023-02-11 06:05:14 +0100
committerZack Rusin <zackr@vmware.com>2023-02-15 05:00:09 +0100
commita950b989ea29ab3b38ea7f6e3d2540700a3c54e8 (patch)
treeb34a9459e6e942fc0414c9bcc7e678678fcbe036 /drivers/dma/ptdma/ptdma.h
parentdrm/vmwgfx: Stop accessing buffer objects which failed init (diff)
downloadlinux-a950b989ea29ab3b38ea7f6e3d2540700a3c54e8.tar.xz
linux-a950b989ea29ab3b38ea7f6e3d2540700a3c54e8.zip
drm/vmwgfx: Do not drop the reference to the handle too soon
v3: Fix vmw_user_bo_lookup which was also dropping the gem reference before the kernel was done with buffer depending on userspace doing the right thing. Same bug, different spot. It is possible for userspace to predict the next buffer handle and to destroy the buffer while it's still used by the kernel. Delay dropping the internal reference on the buffers until kernel is done with them. Instead of immediately dropping the gem reference in vmw_user_bo_lookup and vmw_gem_object_create_with_handle let the callers decide when they're ready give the control back to userspace. Also fixes the second usage of vmw_gem_object_create_with_handle in vmwgfx_surface.c which wasn't grabbing an explicit reference to the gem object which could have been destroyed by the userspace on the owning surface at any point. Signed-off-by: Zack Rusin <zackr@vmware.com> Fixes: 8afa13a0583f ("drm/vmwgfx: Implement DRIVER_GEM") Reviewed-by: Martin Krastev <krastevm@vmware.com> Reviewed-by: Maaz Mombasawala <mombasawalam@vmware.com> Link: https://patchwork.freedesktop.org/patch/msgid/20230211050514.2431155-1-zack@kde.org (cherry picked from commit 9ef8d83e8e25d5f1811b3a38eb1484f85f64296c) Cc: <stable@vger.kernel.org> # v5.17+
Diffstat (limited to 'drivers/dma/ptdma/ptdma.h')
0 files changed, 0 insertions, 0 deletions