CVE-2026-64328 in Linux
Сводка
по VulDB • 25.07.2026
В ядре Linux устранена следующая уязвимость:
usb: gadget: f_fs: Исправлена утечка объекта fence DMA
В функции `ffs_dmabuf_transfer()` объект типа `ffs_dma_fence` выделяется с помощью `kmalloc`, а базовый `dma_fence` впоследствии инициализируется функцией `dma_fence_init()`, которая устанавливает счетчик sсылок (kref) равным 1. Затем функция `dma_resv_add_fence()` получает вторую ссылку, а указатель на объект `ffs_dma_fence` передается в поле «context» структуры `usb_request`.
Механизм dma-resv управляет второй ссылкой, однако первая ссылка никогда не освобождается корректно: функция `ffs_dmabuf_cleanup()` уменьшает счетчик ссылок, но только для балансировки со ссылкой, захваченной в функции `ffs_dmabuf_signal_done()`.
В результате код будет постепенно вызывать утечку памяти по мере создания новых объектов `ffs_dma_fence`, которые никогда не освобождаются.
Для устранения этой проблемы осуществляется передача права собственности на fence объекту резервирования DMA путем вызова `dma_fence_put()` сразу после `dma_resv_add_fence()`. После этого объект `ffs_dma_fence` корректно удаляется после получения сигнала (signaled).
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.