Linux 6.10 має покращення для ігор, підтримку та власний синій екран смерті

Тукс, талісман ядра Linux

Нова версія Випущено ядро ​​Linux 6.10 кілька днів тому і під час запуску цього було представлено кілька досить цікавих розробок, таких як інтеграція драйвера ntsync з примітивами синхронізації Windows NT і додавання компонентів DRM Panic, які діють подібно до «синього екрану смерті».

Було припинено підтримка старих процесорів Alphas, здатність перевіряти цілісність у файлових системах на основі FUSE, Обмеження доступу до ioctl за допомогою механізму Landlock, а також нову підсистему для профілювання операцій розподілу пам’яті, серед іншого.

Якщо говорити про цифри, ця версія містить 14,564 1,989 виправлення, внесені 41 12,509 розробниками, а розмір патча становить 547,663 МБ, що впливає на 312,464 15,680 файлів. Було додано 2,106 54 рядки коду та XNUMX XNUMX видалено. Для порівняння, попередня версія включала XNUMX XNUMX виправлень від XNUMX XNUMX розробників і патч розміром XNUMX МБ.

Що нового в Linux 6.10?

Серед основних нових функцій, представлених Linux 6.10, є нова операція fcntl, F_DUPFD_QUERY, що дозволяє процес ідентифікує, якщо два різних файлових дескриптора вказують на той самий файл, що пропонує альтернативу kcmp() без надання непотрібної інформації та працює навіть тоді, коли kcmp() вимкнено.

La перевірка цілісності в FUSE це ще одна нова функція, і з нею FUSE тепер може використовувати механізм fs-verity для перевірки цілісності та автентичності файлів. Також додано a новий протокол на основі netlink, що полегшує керування сервером NFS у ядрі. У просторі користувача для роботи з цим протоколом була розроблена утиліта nfsdctl.

На додаток до цього, а початкова версія драйвера ntsync, який представляє символьний пристрій /dev/ntsync і набір примітивів синхронізації, що використовуються в ядрі Windows NT. Цей аванс може значно покращити продуктивність ігор Windows, які запускаються через Wine, шляхом усунення накладних витрат RPC у просторі користувача.

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

Був розроблений a початкова реалізація аварійного обробника ядра, називається Паніка DRM. Цей драйвер використовує підсистему DRM для відображення візуального звіту за кольором схожий на «синій екран смерті». У наступних версіях буде додано можливість відображення логотипу та QR-коду в екстрених випадках.

Крім того, Було запропоновано параметр init_mlocked_on_free Для конфігурації на етапі завантаження цей параметр гарантує, що пам’ять, захищена mlock(), буде очищена, якщо її звільнити без розблокування, запобігаючи залишанню криптографічних ключів у пам’яті після раптового завершення програми.

З Інші внесені зміни та вдосконалення у цій версії:

  • Підтримка механізму Shadow Stack у субархітектурі x32, який блокує багато експлойтів, використовуючи апаратні можливості процесорів Intel для захисту від перезапису адреси повернення під час переповнення буфера.
  • Системний виклик mseal було введено, щоб дозволити процесам блокувати зміни певних частин свого адресного простору.
  • Rust продовжує інтегруватися як друга мова для розробки драйверів і модулів ядра. Хоча підтримку Rust не ввімкнено за замовчуванням, версія Rust 1.78 дозволяє використовувати стандартну бібліотеку alloc.
  • опція для модуля dm-crypt для використання робочих черг із високим пріоритетом, покращуючи продуктивність на високопродуктивних серверах.
  • Оптимізація в Btrfs: підтримка зменшення нефіксованих карт екстентів, корисна для зменшення споживання пам’яті в системах з низьким обсягом оперативної пам’яті.
  • Модуль Landlock LSM: цей модуль, який дозволяє обмежити взаємодію певних процесів із зовнішнім середовищем, містить можливість накладати обмеження на доступ до викликів ioctl().
  • Ext4: додано ioctl FS_IOC_GETFSSYSFSPATH для визначення розташування змонтованої файлової системи в ієрархії /sys/fs.
  • Bcachefs був підготовлений для запуску fsck без демонтування розділу, покращуючи його надійність.
  • Драйвер Panthor був включений для графічного процесора Mali 10-го покоління, який використовує технологію CSF для зниження навантаження на центральний процесор і покращення роботи графічного процесора.
  • Intel Arc, ідентифікатори PCI для нових дискретних відеокарт Intel Arc були додані до драйвера i915.
  • Драйвер Xe DRM: продовжується робота над драйвером Xe DRM для графічних процесорів на основі архітектури Intel Xe з доданою підтримкою процесорів Arrow Lake H і початковою підтримкою механізму SR-IOV.
  • Драйвер AMDGPU тепер підтримує SMU 14.0 і нові графічні процесори AMD у системах з архітектурою RISC-V.

Нарешті, якщо ви зацікавлені в тому, щоб дізнатися більше про це, ви можете ознайомитися з деталями в наступна посилання. Нова версія ядра тепер доступна в більшості офіційних каналів дистрибутивів, а також у kernel.org.