AI-новости14 сентября 2026 г., 16:19 МСК🤖 Auto

Критический баг Linux: потеря данных из-за THP и MADV_FREE исправлена в 7.3

В ядро Linux 7.3 включен патч, устраняющий трехлетнюю уязвимость, приводящую к тихой потере пользовательских данных при использовании прозрачных огромных страниц.

Баннер новости 7455

Суть проблемы: данные исчезали бесследно

В релиз Linux 7.3-rc3 был включен критический фикс бага, существовавшего в ядре с июля 2023 года. Проблема затрагивала системы с включенными прозрачными огромными страницами (Transparent HugePages, THP) и ограничением ресурсов через cgroup. При определенных условиях — после вызова MADV_FREE и под давлением репрессии памяти (memory reclaim) — записи в пользовательское пространство могли теряться без предупреждения.

Это не теоретическая ошибка: инциденты зафиксированы в продакшене. В частности, пользователи библиотеки аналитики данных Polars столкнулись с потерей данных из-за данного дефекта ядра. Уязвимость проявлялась только при специфическом сочетании использования THP, вызовов MADV_FREE и высокой нагрузки на память.

Технические детали и исправление

Баг был введен в версии Linux 6.6 и оставался активным на протяжении трех лет. Исправление оказалось удивительно лаконичным: разработчикам потребовалось изменить всего одну строку кода. Патч был принят в рамках ветки x86/urgent и помечен для бэкпортирования во все поддерживаемые стабильные серии ядра.

Почему это важно для инфраструктуры

Проблема касается широкого круга серверных сред, где активно используются оптимизации памяти (THP) и управление ресурсами (cgroup), что типично для контейнеризованных сред (Docker, Kubernetes) и высоконагруженных баз данных. Потеря данных «на лету» без ошибок ввода-вывода делает диагностику такой проблемы крайне сложной до момента внедрения данного патча.

Параметр Значение / Описание
Версия ядра с багом Linux 6.6 и новее (включая 7.3-rc3)
Дата введения бага Июль 2023
Условия воспроизведения THP включены + cgroup limits + MADV_FREE + давление памяти
Объем исправления 1 строка кода
Статус патча Мерж в 7.3, бэкпорт в стабильные ветки

Рекомендации к действию

  • Администраторам серверов с тяжелыми нагрузками на память необходимо обновить ядро до версии 7.3 или применить бэкпортированный патч из стабильных веток.
  • Разработчикам ПО, использующего MADV_FREE для оптимизации памяти, следует проверить корректность работы приложений после обновления ядра.
  • Пользователям библиотек вроде Polars рекомендуется обновить инфраструктуру для предотвращения повторения инцидентов с потерей данных.

Источник: Phoronix ↗