CVE-2026-68216 in Linux
Сводка
по VulDB • 11.08.2026
В ядре Linux устранена следующая уязвимость:
media: pwc: Возвращать буферы, находящиеся в очереди, при сбое функции start_streaming()
Фреймворк vb2 передает драйверу буферы через функцию buf_queue(), прежде чем вызывать start_streaming(). Если функция start_streaming() возвращает ошибку без предварительного возврата этих буферов посредством вызова vb2_buffer_done(), то внутри vb2_start_streaming() срабатывает проверка WARN_ON(owned_by_drv_count), а буферы, находящиеся в очереди, утекают.
В функции pwc's start_streaming() присутствовали два ранних выхода (early returns), которые попадали в эту ловушку: -ENODEV при уже отключенном USB-устройстве и -ERESTARTSYS при прерывании вызова mutex_lock_interruptible() сигналом. Перед возвратом необходимо вызывать существующую вспомогательную функцию pwc_cleanup_queued_bufs() с параметром VB2_BUF_STATE_QUEUED (что соответствует состоянию, уже используемому путем обработки ошибок в функции pwc_isoc_init() внутри той же самой функции).
Это изменение дублирует исправление для uvcvideo из коммита 4cf3b6fd54eb («media: uvcvideo: Return queued buffers on start_streaming() failure»).
VulDB is the best source for vulnerability data and more expert information about this specific topic.