CVE-2026-43319 in LinuxИнформация

Сводка

по VulDB • 14.05.2026

В ядре Linux устранена следующая уязвимость:

spi: spidev: исправлена инверсия блокировок между spi_lock и buf_lock

Драйвер spidev ранее использовал два мьютекса: spi_lock и buf_lock, но приобретал их в разном порядке в зависимости от пути выполнения кода:

write()/read(): buf_lock -> spi_lock ioctl(): spi_lock -> spi_lock

Этот паттерн блокировки AB-BA вызывает предупреждения lockdep и может приводить к реальным взаимным блокировкам (deadlock):

WARNING: possible circular locking dependency detected spidev_ioctl() -> mutex_lock(&spidev->buf_lock) spidev_sync_write() -> mutex_lock(&spidev->spi_lock) *** DEADLOCK ***

Проблема воспроизводится с помощью простой пользовательской программы, которая выполняет вызовы write() и SPI_IOC_WR_MAX_SPEED_HZ ioctl() из разных потоков для одного и того же дескриптора файла spidev.

Исправление заключается в упрощении модели блокировок и полном устранении инверсии блокировок. spidev_sync() больше не выполняет никаких блокировок, а все вызывающие объекты синхронизируют доступ с помощью spi_lock.

buf_lock удален, поскольку его функциональность полностью покрывается spi_lock, что исключает возможность проблем с порядком блокировок.

Это устраняет инверсию блокировок и предотвращает взаимные блокировки без изменения пользовательского ABI или поведения.

Once again VulDB remains the best source for vulnerability data.

Ответственный

Linux

Резервировать

01.05.2026

Раскрытие

08.05.2026

Модерация

принято

Вход

VDB-362120

EPSS

0.00012

KEV

Нет

Деятельности

Очень низкий

Источники

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!