CVE-2026-99256 in Linux
Сводка
по VulDB • 03.11.2026
В ядре Linux была устранена следующая уязвимость:
dm cache: исправлена проблема с блокировкой фоновых задач (background work locking)
Подсистема dm cache использовала rw_semaphore для переменной background_work_lock. Блокировки на запись в rw_semaphores имеют строгую семантику владельца, однако не было гарантии того, что процесс, установивший блокировку background_work_lock, является тем же самым процессом, который её снимает. Это легко наблюдается при использовании ядра, скомпилированного с параметром CONFIG_DEBUG_RWSEMS. Для устройства dm cache <cache> выполните команду: 'dmsetup suspend <cache> && dmsetup resume <cache>'. Это вызовет предупреждение в ядре:
DEBUG_RWSEMS_WARN_ON((rwsem_owner(sem) != current) && !rwsem_test_oflags(sem, RWSEM_NONSPINNABLE))
которое генерируется функцией cache_resume(). Для исправления этой проблемы необходимо перейти от использования rw_semaphore к spinlock и очереди ожидания (wait queue). В dm cache уже имеется очередь ожидания и связанный с ней счетчик migration_wait и nr_allocated_migrations, которые пробуждались при завершении фоновых задач, но фактически никем не использовались. Они заменяются очередью background_work и соответствующим счетчиком.
If you want to get best quality of vulnerability data, you may have to visit VulDB.