Лінус Торвальдс оголосив про доступність нової версії ядра Linux 5.9 у списку розсилки. Ця версія містить кілька нових функцій та покращень, а також нові драйвери та оновлення драйверів.
Розробка ядра Linux 5.9 розпочалася приблизно два місяці тому, коли Лінус Торвальдс оголосив про першу віху "Кандидат у випуск" (RC). Після не менше восьми RC, остаточна версія ядра тепер доступна і повинна надійти до деяких найпопулярніших дистрибутивів Linux найближчими тижнями.
Що стосується сильних сторін Linux 5.9, то тут є підтримка архітектури Unicore , підтримка стиснення Zstandard (Zsdt) для компіляції ядер x86, повна підтримка асинхронних операцій читання буфера в підсистемі io_uring, а також нова опція порятунку та кілька покращень продуктивності файлової системи Btrfs.
Також є підтримка інструкцій FSGSBASE x86, підтримка ємності для планувальника дедлайнів, нова кнопка sysctl, підтримка вбудованого шифрування для файлових систем EXT4 та F2FS , а також підтримка зовнішніх контролерів пам'яті NVIDIA Tegra210 та підтримка вбудованих регуляторів Chrome OS.
Крім того, Linux 5.9 пропонує новий системний виклик close_range() , підтримку відеопроцесорів Intel “Keem Bay” Movidius, підтримку протоколу паралельного резервування, підтримку ітераторів BPF на сокетах TCP та UDP, підтримку розширених атрибутів для клієнтів NFS 4.2 та schedutil як регулятор частоти процесора за замовчуванням для архітектур ARM та AArch64 (ARM64).
Крім того, також підкреслюється додаткова підтримка плат, пристроїв та платформ ARM: Pine64 PinePhone v1.2, Lenovo IdeaPad Duet 10.1, ASUS Google Nexus 7, Acer Iconia Tab A500, Qualcomm Snapdragon SDM630 (використовується в Sony Xperia 10, 10 Plus, XA2, XA2 Plus та XA2 Ultra), Jetson Xavier NX, Amlogic WeTek Core2, Aspeed EthanolX, п'ять нових плат на базі NXP i.MX6, MikroTik RouterBoard 3011, Xiaomi Libra, Microsoft Lumia 950, Sony Xperia Z5, MStar, Microchip Sparx5, Intel Keem Bay, Amazon Alpine v3 та Renesas RZ/G2H.
Для контрольних груп реалізовано новий контролер пам'яті slab , який примітний тим, що переносить облік slab з рівня сторінок пам'яті на рівень об'єктів ядра. Це дозволяє спільно використовувати сторінки slab між різними контрольними групами, замість того, щоб виділяти окремі кеші slab для кожної контрольної групи. Запропонований підхід підвищує ефективність використання slab , зменшує обсяг пам'яті, що використовується для slab, на 30–45%, значно зменшує загальне споживання пам'яті ядра та зменшує фрагментацію пам'яті.
Щодо покращень графіки, драйвер amdgpu додає початкову підтримку графічних процесорів AMD Navi 21 (Navy Flounder) та Navi 22 (Sienna Cichlid). Для графічних процесорів Southern Islands (Radeon HD 7000) додано підтримку механізмів прискорення кодування та декодування відео UVD/VCE. Також додано функцію, що дозволяє повертати екран на 90, 180 або 270 градусів.
Цікаво, що драйвер графічного процесора AMD є найбільшим драйвером ядра - він містить приблизно 2,71 мільйона рядків коду, що становить приблизно 10% від загального розміру ядра (27,81 мільйона рядків).
У той же час 1.79 мільйона рядків знаходяться в автоматично сформованих файлах заголовків з даними для регістрів GPU, а код С - 366 тисяч рядків (для порівняння контролер Intel i915 включає 209 тисяч рядків, а Нуво - 149 тисяч).
Драйвер Nouveau додає підтримку покадрової перевірки цілісності CRC (циклічної перевірки надмірності) у графічних процесорах NVIDIA. Реалізація базується на документації, наданій NVIDIA.
Звичайно, у цьому великому випуску ядра включено багато нових та оновлених драйверів, щоб додати підтримку новіших апаратних компонентів. Також присутні деякі функції, пов'язані з безпекою, разом зі звичайними виправленнями помилок та внутрішніми змінами ядра.
Зрештою, цю нову версію можна завантажити з kernel.org, якщо ви бажаєте зібрати власне ядро. В інших випадках ви можете дочекатися виходу стабільного ядра Linux 5.9 у репозиторіях стабільного програмного забезпечення вашого дистрибутива GNU/Linux, перш ніж оновлюватися з попередньої версії.
Що стосується наступної версії Linux 5.10, очікується, що вона має надійти в середині грудня або під час Різдвяних свят.