Linux 6.15 чуть не убил производительность: спасли в последний час

Linux 6.15 чуть не убил производительность: спасли в последний час

Nginx, PostgreSQL, Memcached — все замедлились из-за одного бага.

image

Разработка ядра Linux 6.15 чуть не обернулась катастрофой: масштабная регрессия производительности снизила скорость работы HTTPS-серверов Nginx в три раза. К счастью, баг был замечен и устранён всего за сутки после его публичного обнародования.

Проблема впервые была замечена при тестировании Nginx на новой версии ядра. При высоконагруженных конфигурациях производительность резко упала — это стало очевидным при сравнении результатов с предыдущими версиями. Изначально даже автор проблемного коммита удивился: «3x регрессия? Вау. Спасибо за сигнал. Я смотрю на патч и не вижу причины. Подключу других экспертов».

Хотя репродуцировать проблему удавалось не сразу, переломным моментом стало вмешательство инженера SUSE Властимила Бабки. Именно он, анализируя подсистему slab и влияние нового компилятора GCC, нашёл путь к решению и предложил исправление , которое подтвердило эффективность на практике. Исправление было подготовлено и протестировано в течение одной ночи, а на следующий день Линус Торвальдс включил патч в ветку Linux 6.15 .

Проблема затрагивала не только Nginx. Разработчик ядра Алексей Старовойтов обнаружил ту же регрессию в Netperf и напрямую обратился к Торвальдсу с просьбой как можно быстрее включить исправление.

Бенчмарки подтвердили эффективность патча. В Nginx при 200 и 500 соединениях патчированная версия показывала лучшие результаты. Ethr, протестированный на сервере с 5-м поколением AMD EPYC, также показал прирост в тестах на пропускную способность и задержки. В ряде конфигураций новый патч даже опередил прежние стабильные результаты.

Даже инженерное ПО OpenFOAM, база данных ClickHouse, СУБД PostgreSQL и Memcached оказались затронуты проблемным коммитом. Особенно заметны были потери в Memcached, где пропускная способность значительно снизилась.

К счастью, уязвимость производительности устранена, и разработка Linux 6.15 продолжается. Этот инцидент стал напоминанием, насколько важны тестирование, прозрачность и быстрая реакция сообщества разработчиков ядра.

Реальные атаки. Эффективные решения. Практический опыт.

Standoff Defend* — это онлайн-полигон, где ты сможешь испытать себя. Попробуй себя в расследовании инцидентов и поборись за победу в конкурсе

*Защищать. Реклама. АО «Позитив Текнолоджиз», ИНН 7718668887