CVSS 3.1
Вероятност да бъде експлоатирана в следващите 30 дни (EPSS)
Атакува се
Време до експлоатация
Атакува се локално, без особени условия, с обикновен потребителски вход и без действие от потребителя.
- Експлоатация: няма данни за експлоатация
- Атаката не може да се автоматизира
Описание
Оригинално описание
In the Linux kernel, the following vulnerability has been resolved: drm/xe: Hold a dma-buf reference for imported BOs An imported dma-buf BO is created as a ttm_bo_type_sg BO whose reservation object is the exporter's dma_buf->resv. The importer, however, only takes a dma-buf reference after a successful dma_buf_dynamic_attach(). Until then nothing keeps the exporter alive, so if the exporter is freed while the BO still references its resv, a later access to that resv is a use-after-free: Oops: general protection fault, probably for non-canonical address 0x6b6b6b6b6b6b6b9c Workqueue: ttm ttm_bo_delayed_delete [ttm] RIP: 0010:mutex_can_spin_on_owner+0x3f/0xc0 This can be reached on two paths: - dma_buf_dynamic_attach() fails, or - ttm_bo_init_reserved() fails during BO creation. In both cases the BO already has bo->base.resv pointing at the exporter resv, and sg BOs are always torn down via ttm_bo_delayed_delete(), which locks bo->base.resv asynchronously - potentially after the exporter has been freed. Take the dma-buf reference in xe_bo_init_locked(), before ttm_bo_init_reserved(), so it also covers a creation failure there, and release it in xe_ttm_bo_destroy(). The reference is held for the whole BO lifetime, keeping the shared resv alive on every path. v2: - Reworked the fix to avoid creating the imported sg BO before dma_buf_dynamic_attach() succeeds. - Attach with importer_priv == NULL and make invalidate_mappings ignore incomplete imports. v3: - Dropped the xe-side reordering approach since importer_priv must be valid when dma_buf_dynamic_attach() publishes the attachment. - Per Christian's suggestion on the v1 thread, keyed the check on import_attach rather than removing the sg guard entirely. - Fixes both xe and amdgpu in a single TTM patch. v4: - Moved import_attach check to after dma_resv_copy_fences() so fences are copied before returning for successful imports (Thomas). - Removed exporter-alive
Засегнати продукти
- Linux Linux: dd08ebf6c3525a7ea2186e636df064ea47281987 преди c22d65d62b3318e237c0e5b1177d90ab83d9fe06; dd08ebf6c3525a7ea2186e636df064ea47281987 преди c1954c66662de477a8f4309335b775f7b07bd28b; dd08ebf6c3525a7ea2186e636df064ea47281987 преди ba8c4cbb31c6f81fa5b12d6e28f1f706040aff48; dd08ebf6c3525a7ea2186e636df064ea47281987 преди 62775525a27c3b0d56382e08ba81ee2d322058b6
- Linux Linux: 6.8; преди 6.8; 6.12.103 до 6.12.*; 6.18.42 до 6.18.*; 7.1.6 до 7.1.*; от 7.2 нататък
Вид слабост
История
- 10 август 2026 Публикувано
Други уязвимости в Linux Linux
Първоизточници
- https://www.cve.org/CVERecord?id=CVE-2026-68266
- https://nvd.nist.gov/vuln/detail/CVE-2026-68266
- https://git.kernel.org/stable/c/c22d65d62b3318e237c0e5b1177d90ab83d9fe06
- https://git.kernel.org/stable/c/c1954c66662de477a8f4309335b775f7b07bd28b
- https://git.kernel.org/stable/c/ba8c4cbb31c6f81fa5b12d6e28f1f706040aff48
- https://git.kernel.org/stable/c/62775525a27c3b0d56382e08ba81ee2d322058b6