Description
In the Linux kernel, the following vulnerability has been resolved: drm/vmwgfx: drop dma_buf reference on foreign-fd prime import ttm_prime_fd_to_handle() returns -ENOSYS when the imported fd's dma_buf->ops do not match the ttm_object_device's ops, but does so without releasing the reference acquired by dma_buf_get(). Any unprivileged renderD client passing a non-vmwgfx prime fd through the DRM_VMW_GB_SURFACE_REF{,_EXT} path leaks one dma_buf reference per call and indefinitely pins the foreign exporter's GEM resources. Funnel the error path through the existing dma_buf_put() so the reference is always dropped.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
65981f7681abdf92b25942222b629b9c512d0705 to < 1715901e7052cf90fbf04c8303e563a47e021278affected65981f7681abdf92b25942222b629b9c512d0705 to < c4fd91ee7228f56fbb4cf528757dc17ffefeb0eeaffected65981f7681abdf92b25942222b629b9c512d0705 to < 619c3cfa88e09603a13d918f754808db2dda7057affected65981f7681abdf92b25942222b629b9c512d0705 to < c1c22fca0a0896a452a7cb92422d67babd65b4beaffected65981f7681abdf92b25942222b629b9c512d0705 to < a1e972fa94c3a8069e022c67b9d97c7aa7b05293affected65981f7681abdf92b25942222b629b9c512d0705 to < a8434b145b1e467940334c58c00af241e9494c5faffected65981f7681abdf92b25942222b629b9c512d0705 to < 4df39eb99bb47d1f24d1952c23b21b10988356bfaffected65981f7681abdf92b25942222b629b9c512d0705 to < f739416dc555fa205a785e5135d73fa39b26f35daffected
Linux Linux
Default version status: affected
3.13affected0 to < 3.13unaffected5.10.270 to ≤ 5.10.*unaffected5.15.221 to ≤ 5.15.*unaffected6.1.183 to ≤ 6.1.*unaffected6.6.151 to ≤ 6.6.*unaffected6.12.103 to ≤ 6.12.*unaffected6.18.44 to ≤ 6.18.*unaffected7.1.8 to ≤ 7.1.*unaffected7.2 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/1715901e7052cf90fbf04c8303e563a47e021278 ↗
- https://git.kernel.org/stable/c/c4fd91ee7228f56fbb4cf528757dc17ffefeb0ee ↗
- https://git.kernel.org/stable/c/619c3cfa88e09603a13d918f754808db2dda7057 ↗
- https://git.kernel.org/stable/c/c1c22fca0a0896a452a7cb92422d67babd65b4be ↗
- https://git.kernel.org/stable/c/a1e972fa94c3a8069e022c67b9d97c7aa7b05293 ↗
- https://git.kernel.org/stable/c/a8434b145b1e467940334c58c00af241e9494c5f ↗
- https://git.kernel.org/stable/c/4df39eb99bb47d1f24d1952c23b21b10988356bf ↗
- https://git.kernel.org/stable/c/f739416dc555fa205a785e5135d73fa39b26f35d ↗