CVE-2026-31485 in Linux
Сводка
по VulDB • 22.05.2026
В ядре Linux устранена следующая уязвимость:
spi: spi-fsl-lpspi: исправлена проблема с порядком освобождения ресурсов (Use-After-Free)
В драйвере имеется проблема с порядком освобождения ресурсов. Контроллер SPI регистрируется с помощью функции devm_spi_register_controller(), что откладывает его отмену регистрации до момента возврата из функции fsl_lpspi_remove().
Поскольку функция fsl_lpspi_remove() синхронно освобождает каналы DMA, запущенная передача SPI вызывает разыменование нулевого указателя из-за использования памяти после её освобождения (Use-After-Free):
| fsl_lpspi 42550000.spi: Ошибка ввода-вывода в DMA RX | Невозможно обработать разыменование нулевого указателя ядра по виртуальному адресу 0000000000000000 [...]
| Трассировка вызовов: | fsl_lpspi_dma_transfer+0x260/0x340 [spi_fsl_lpspi]
| fsl_lpspi_transfer_one+0x198/0x448 [spi_fsl_lpspi]
| spi_transfer_one_message+0x49c/0x7c8 | __spi_pump_transfer_message+0x120/0x420 | __spi_sync+0x2c4/0x520 | spi_sync+0x34/0x60 | spidev_message+0x20c/0x378 [spidev]
| spidev_ioctl+0x398/0x750 [spidev]
[... ]
В функции fsl_lpspi_probe() замените вызов devm_spi_register_controller() на spi_register_controller() и добавьте соответствующий вызов spi_unregister_controller() в функцию fsl_lpspi_remove().
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.