Ad

CVE-2026-72132

NONE EPSS 0.20%
Обновлено 17 августа 2026
Nfs
Параметр Значение
Поставщик Nfs
Публичный эксплойт Нет

В ядре Linux устранена следующая уязвимость: NFS: оплата нестабильной записи производится по размеру запроса, а не по размеру фолио. nfs_folio_mark_unstable() и nfs_folio_clear_commit() взимают плату и снимайте плату с NR_WRITEBACK/WB_WRITEBACK с помощью folio_nr_pages(folio) один раз за *запрос* добавлен в список фиксации или удален из него. Это правильно только когда у фолио есть один связанный запрос. Когда pg_test разделяет фолио на N запросов подфолио (например, чередование гибких файлов pNFS с единица полосы меньше размера фолио или обычная версия с ограничением по размеру расщепление), каждый из N запросов независимо заряжает всю количество страниц фолио, увеличивая бухгалтерский учет в N раз на фолио.

При использовании больших фолио и небольших блоков полос эта цифра достигает нескольких порядков величины: фолио размером 2 МБ, разделенное на 512 запросов по 4 КиБ, может заряжайте в 512 раз больше своего реального размера, вызывая глобальную грязную + обратную запись учет за грязным порогом системы и принуждение каждого буферизованная запись на хосте в путь жесткого регулирования, включая несвязанные потоки внутриядерного сервера NFS, совместно использующие этот блок. Плата за каждый запрос взимается только за те страницы, которые он фактически охватывает.

Показать оригинальное описание (EN)

In the Linux kernel, the following vulnerability has been resolved: NFS: Charge unstable writes by request size, not folio size nfs_folio_mark_unstable() and nfs_folio_clear_commit() charge and uncharge NR_WRITEBACK/WB_WRITEBACK by folio_nr_pages(folio) once per *request* added to or removed from a commit list. This is correct only when a folio has a single associated request. When pg_test splits a folio into N sub-folio requests (e.g. pNFS flexfiles striping with a stripe unit smaller than the folio size, or plain wsize-limited splitting), each of the N requests independently charges the whole folio's page count, inflating the accounting by a factor of N per folio. With large folios and small stripe units this reaches multiple orders of magnitude: a 2 MiB folio split into 512 4 KiB requests can charge up to 512x its real size, pushing global dirty+writeback accounting past the system's dirty threshold and forcing every buffered writer on the host into the hard-throttle path, including unrelated in-kernel NFS server threads sharing the box. Charge each request only for the pages it actually covers.