Linux 6.15: нове ядро з підтримкою графіки NVIDIA та Intel

Linux 6.15: нове ядро з поліпшеною підтримкою графіки NVIDIA та Intel

Вийшла нова версія ядра Linux 6.15, яка включає значні покращення, нові функції та підтримку сучасного обладнання. Основну увагу в оновленні приділено драйверам, мережевим поліпшенням та оптимізації файлових систем.

Підтримка графіки NVIDIA та Intel

В ядрі 6.15 з’явилася початкова підтримка драйвера Nova, який розробляється як заміна Nouveau для сучасних графічних процесорів NVIDIA з архітектурою GSP. Драйвер написано мовою Rust. На даний момент це базова реалізація без підтримки дисплея, але проєкт обіцяє стати важливим кроком для покращення роботи NVIDIA на Linux.

Драйвер Intel Xe також отримав оновлення. Тепер він підтримує Shared Virtual Memory (SVM), сповіщення про збої GPU та моніторинг температури для відеокарт Arc через HWMON.

Нові підсистеми та спірні зміни

Підсистема fwctl, додана в ядро 6.15, спрощує взаємодію з прошивками пристроїв через віддалені виклики процедур (RPC). Вона підтримує пристрої CXL, мережеві адаптери mlx5 та карти AMD/Pensando.

Ще одна зміна — хук безпеки для io_uring. Він дозволяє SELinux застосовувати політики контролю даних, які читає ядро. Незважаючи на критику Торвальдса за складність, хук увійшов до релізу.

Мережеві поліпшення в Linux 6.15

Ядро 6.15 додає підтримку zero-copy receive (zcrx) через io_uring, що знижує накладні витрати на копіювання даних у мережевих додатках. Зокрема, zcrx спрощує передачу даних у користувацький простір без складних операцій mmap.

Нова опція TCP_RTO_MAX_MS дозволяє налаштовувати таймаути повторних спроб з’єднання по IPv4, що корисно для нестабільних мереж. Крім того, додано API fanotify для моніторингу подій монтування та розмонтування файлових систем у реальному часі.

Оптимізація файлових систем

Підсистема FUSE тепер підтримує таймаути для серверів, що не відповідають, та обробку імен файлів довших за 1024 символи. Це запобігає зависанням, наприклад, при використанні SSH.

Файлова система exFAT значно прискорила видалення великих файлів. З опцією монтування “discard” видалення файлу обсягом 80 ГБ скоротилося з понад 4 хвилин до 1,6 секунди завдяки оптимізаціям від Sony.

Btrfs отримала підтримку швидкого стиснення zstd з рівнями від -15 до -1. Це підвищує продуктивність при зниженні ступеня стиснення.

Файлова система Bcachefs отримала функцію “scrub” для пошуку та виправлення помилок, а також підтримку блоків, що перевищують розмір системної сторінки.

Підтримка ARM і RISC-V

Ядро 6.15 розширює підтримку пристроїв на архітектурах ARM і RISC-V. Додані дерева пристроїв для Google Pixel Pro 6 (gs101) та Allwinner A523. Для RISC-V реалізована підтримка плати Milk-V Jupiter ITX та розширень BFloat16, ZBKB, Zaamo і Zalrsc.

Драйвери та підтримка пристроїв

Реліз включає драйвери для сенсорної панелі Apple Touch Bar на MacBook Pro з процесорами Intel, M1 і M2. Вони забезпечують керування підсвіткою, сенсорним введенням та відображенням функціональних клавіш.

Контролери Sony PlayStation 5, Xbox Turtle Beach Recon, Stealth Ultra та PowerA Wired Controller отримали поліпшення. Додано підтримку мережевих адаптерів Intel Killer E5000 (на базі Realtek RTL8126) та пристроїв Moza Racing, Cammus та інших симуляторів.

Серед інших змін:

  • перехід псевдофайлових систем на новий API монтування;
  • отримання статусу завершення процесу через pidfd після його видалення;
  • опціональне блокування відображення пам’яті для підвищення безпеки;
  • підтримка профілювання затримок у підсистемі perf;
  • підтримка файлової системи XFS зонованих пристроїв зберігання даних;
  • опція traceoff_after_boot для вимкнення трасування після завантаження;
  • відеодекодер Qualcomm Iris для h.264;
  • підтримка Rust для ARMv7 і нові абстракції;
  • вимога Python 3.9+ для роботи з кодом та документацією ядра.

Детальніше про нове ядро Linux 6.15 можна дізнатись на офіційному сайті або у репозиторії на GitHub.