Після двох місяців розробки Лінус Торвальдс випустив ядро Linux версії 5.5 . Серед найбільш помітних змін у цій версії – можливість призначати альтернативні імена мережевим інтерфейсам, інтеграція криптографічних функцій з бібліотеки Zinc, можливість дублювання більше двох дисків у Btrfs RAID 1, механізм моніторингу стану живих патчів, фреймворк для тестування дисків kunit, покращена продуктивність бездротового стеку mac80211, можливість доступу до кореневого розділу через протокол SMB та багато іншого.
У новій версії було впроваджено 15 505 патчів розробників розміром 44 МБ (зміни торкнулися 11 781 файлу, додавши 609 208 рядків коду та видаливши 292 520 рядків). Приблизно 44% усіх змін у версії 5.5 пов'язані з драйверами пристроїв, приблизно 18% - з оновленнями коду, що стосується архітектури обладнання, 12% - з мережевим стеком, 4% - з файловими системами та 3% - з внутрішніми підсистемами ядра.
Основні новинки ядра Linux 5.5
У цій новій версії ядра Linux 5.5 для файлової системи Btrfs було додано підтримку контрольних сум xxhash64, blake2b та sha256 .
У реалізації RAID1 можливо дублювати дані на трьох (raid1c3) або чотирьох (raid1c4) пристроях (раніше дублювання обмежувалося двома пристроями), що дозволяє зберігати дані, втрачаючи при цьому 2 або 3 пристрої одночасно.
Тоді як Ext4 надає можливість використовувати менші блоки для шифрування (раніше шифрування виконувалося лише блоками, розмір яких відповідав розміру сторінок пам'яті (4096)).
F2FS реалізує режим закріплення файлів з вирівнюванням по краю 2 МБ для розміщення в повністю коректному сегменті, що забезпечує відсутність подальшого перерозподілу цього файлу збирачем сміття.
Ще однією важливою новою функцією є додана підтримка моніторингу стану датчиків температури NVMe-пристроїв за допомогою API hwmon (сумісного з libsensors та командою "sensors"), для доступу до якого не потрібні підвищені привілеї (раніше інформація про температуру відображалася в "розумному журналі", доступ до якого був доступний лише root-користувачу).
Крім того, в рамках основного проєкту інтеграції WireGuard VPN , багато функцій з криптографічної бібліотеки Zinc було портовано до стандартного Crypto API, включаючи швидкі реалізації алгоритмів ChaCha20 та Poly1305.
Гіпервізор KVM на архітектурі x86 надає можливість обробляти вкладені таблиці п'яти рівнів сторінок пам'яті та додає підтримку інструкцій XSAVES для процесорів AMD. Для процесорів ARM64 додано можливість передачі інформації про синхронізацію.
До криптографічної підсистеми також додано підтримку хеш-функції blake2b , що забезпечує дуже високу продуктивність хеш-обчислень, зберігаючи при цьому надійність на рівні SHA-3, а також скорочену версію Blake2s.
Ще однією значною зміною в цій новій версії ядра Linux 5.5 є новий механізм призначення альтернативних імен мережевим інтерфейсам, який дозволяє одночасно використовувати кілька імен для інтерфейсу (включаючи використання кількох шаблонів udev).
Розмір імені може складати до 128 символів (раніше назва мережевого інтерфейсу обмежувалася 16 символами).
Щоб додати додаткове ім'я, скористайтеся командою " ip link prop add " (наприклад, " ip link prop add enx00e04c361e4c altname someothername "). Реалізація базується на додаванні додаткових властивостей до інтерфейсу та може бути розширена в майбутньому за допомогою інших параметрів, не обмежуючись альтернативними іменами.
Зрештою, якщо ви хочете дізнатися більше про повний список змін, включених до цієї нової версії ядра Linux, ви можете ознайомитися з ним за наступним посиланням.
Щодо доступності нової версії, ви можете завантажити код для компіляції ядра зі свого офіційного веб-сайту або дочекатися, поки зібрані пакети будуть включені до репозиторіїв вашого дистрибутива.