diff options
author | Vivek Kasireddy <vivek.kasireddy@intel.com> | 2025-05-01 16:24:19 -0700 |
---|---|---|
committer | Dmitry Osipenko <dmitry.osipenko@collabora.com> | 2025-05-12 14:49:41 +0300 |
commit | 44b6535d8acebbbdb8b8e79b22118bb3d7fa93df (patch) | |
tree | bffe35271b9e8fa225a2a556ba580e4a5bb0f667 /drivers/media/dvb/dvb-core/dvb_ca_en50221.c | |
parent | 9b8f32002cddf792fc6657c6f084585c7af1a858 (diff) |
drm/virtio: Fix NULL pointer deref in virtgpu_dma_buf_free_obj()HEADfor-linux-nextdrm-misc-next
There is a chance that obj->dma_buf would be NULL by the time
virtgpu_dma_buf_free_obj() is called. This can happen for imported
prime objects, when drm_gem_object_exported_dma_buf_free() gets
called on them before drm_gem_object_free(). This is because
drm_gem_object_exported_dma_buf_free() explicitly sets
obj->dma_buf to NULL.
Therefore, fix this issue by storing the dma_buf pointer in the
virtio_gpu_object instance and using it in virtgpu_dma_buf_free_obj.
This stored pointer is guaranteed to be valid until the object is
freed as we took a reference on it in virtgpu_gem_prime_import().
Fixes: 415cb45895f4 ("drm/virtio: Use dma_buf from GEM object instance")
Cc: Dmitry Osipenko <dmitry.osipenko@collabora.com>
Cc: Thomas Zimmermann <tzimmermann@suse.de>
Signed-off-by: Vivek Kasireddy <vivek.kasireddy@intel.com>
Reviewed-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
Signed-off-by: Dmitry Osipenko <dmitry.osipenko@collabora.com>
Link: https://lore.kernel.org/r/20250501232419.180337-1-vivek.kasireddy@intel.com
Diffstat (limited to 'drivers/media/dvb/dvb-core/dvb_ca_en50221.c')
0 files changed, 0 insertions, 0 deletions