Торвальдс принял больше 11 тысяч коммитов. Начнемс с фундаментального. Во-первых, поддержка Rust в ядре лишилась статуса экспериментальной. Язык закрепился в мейнлайне окончательно.
Во-вторых, разрабы провели рефакторинг работы с памятью. Классическое выделение через
kmalloc(sizeof(*ptr)) массово заменяют на макросы семейства kmalloc_obj(), которые работают на основе типа данных, а не их байтового размера. Это на корню рубит целый класс багов с переполнением буфера из-за неверного подсчета памяти 👍В-третьих, из ядра выкинули старый код загрузки
initrd на базе linuxrc. Теперь единственным верным способом загрузки остается initramfs.По файловым системам и хранилищам завезли отличные фичи для прода:
🟢 В ядро вмерджили абсолютно пустую, неизменяемую файловую систему - nullfs. Идеальный костыль для
init-процессов. Теперь юзерспейс может монтировать поверх нее нужные ФС и делать pivot_root(), не заморачиваясь с очисткой содержимого старого initramfs.🟢 XFS получила систему автономного самовосстановления.
🟢 NFS версии 4.1 стала дефолтной. Демон
NFSD обзавелся динамическим пулом потоков, который сам масштабируется под нагрузкой. Плюс закрыта старая логическая дыра... NFS больше не будет экспортировать служебные псевдо-ФС ядра (типа pidfs и nsfs), так как они требуют специфичной обработки прав доступа.🟢 Оптимизировали сброс страниц в Zram. Раньше сжатые в RAM данные перед выгрузкой на физический диск (
writeback) приходилось сначала распаковывать. Теперь механизм умеет писать на диск сжатые данные напрямую, минуя декомпрессию.Контейнерные рантаймы (Docker, Podman) смогут использовать новый флаг
OPEN_TREE_NAMESPACE. Он позволяет открыть новое пространство имен монтирования без полного клонирования существующего. Старт новых контейнеров на серверах с тысячами маунт-поинтов станет ощутимо быстрее 🟢Также ядро начало готовиться к квантовому будущему... добавлена поддержка пост-квантовых цифровых подписей ML-DSA для аутентификации модулей ядра. А в подсистему SELinux завезли контроль доступа для BPF-токенов.
Никаких революций в 7.0 не произошло, просто ядро становится безопаснее, контейнеры грузятся быстрее, а легаси-код скидывают в
/dev/null. Финальный стейбл ожидается в середине апреля 🐧Типичный 🥸 Сисадмин
