На прошлой неделе Линус Торвальдс объявил об общедоступности новая версия Ядро Linux 6.8, версия, которая заняла несколько месяцев и имела некоторые задержки из-за большего количества поставок, чем обычно. Этот выпуск включает в себя несколько основных моментов, таких как lСовместимость с процессором Broadcom BCM2712. на Raspberry Pi 5, Уменьшение диапазона Wi-Fi RFI (WBRF) на базе ACPI от AMD, новый графический драйвер Intel Xe DRM и поддержка fscrypt в CephFS, среди прочего.
Одной из наиболее важным моментом является первоначальная поддержка Rust архитектуры LoongArch. и способность Rust разрабатывать сетевые драйверы PHY. Хотя версия Linux 6.7 не такая большая, как Linux 6.8, в ней реализовано большое количество изменений и улучшений.
Основные новые возможности Linux 6.8
В представленной новой версии Linux 6.8 подсистема Zswap был улучшен благодаря возможности принудительной очистки холодных страниц памяти. к которым не было доступа и которые, вероятно, останутся неиспользованными, активируясь в ситуациях нехватки оперативной памяти. Zswap работает путем кэширования страниц, которые вытесняются в раздел подкачки, по возможности сжимая их в ОЗУ, а не сбрасывая их на диск в несжатом виде. Кроме, Zswap представляет новый режим, который отключает запись в фактический раздел подкачки. если запись не удалась, это также предотвращает загрузку страниц, которые уже находятся в пуле Zswap в разделе подкачки.
Относительно планировщик задач, интегрирован серверный механизм SCHED_DEADLINE, который решает проблему недостаточного использования ресурсов ЦП обычными задачами, когда ЦП монополизирован высокоприоритетными задачами (реального времени). Раньше ядро использовало механизм регулирования в реальном времени, который резервировал 5% ресурсов ЦП для задач с низким приоритетом, оставляя 95% для задач в реальном времени.
Linux 6.8 теперь включает в себя драйвер Xe DRM, разработанный для графических процессоров на базе архитектуры Intel Xe, присутствует в видеокартах семейства Intel Arc и во встроенной графике, начиная с процессоров Tiger Lake и далее. Этот драйвер Xe не зависит от кода, поддерживающего старые платформы, и ориентирован на оптимальную работу новых чипов. Он использует обновленную архитектуру, которая лучше использует преимущества подсистемы DRM и компонентов драйвера i915, которые являются общими и не привязаны к конкретным графическим процессорам.
Контроллер Nouveau настроен на использование функций прошивки GSP. по умолчанию на графических процессорах NVIDIA на базе Turing и Ampere. Это означает, что операции инициализации и управления графическим процессором выполняются отдельным микроконтроллером GSP, а не напрямую программируются операции по взаимодействию с оборудованием.
Со своей стороны контроллер AMDGPU улучшил свою поддержку за счет включения ACPI WBRF и VPE DPM. изменения в обработке каналов PCIe, использование 64-битных порядковых номеров в очередях синхронизации, добавление специфичных для AMD механизмов управления цветом и решение проблем, связанных со спящим режимом.
Кроме того, добавлен sподдержка игровых контроллеров NSO (Nintendo Switch Online) как варианты старых контроллеров SNES, Genesis и N64, адаптированные для Nintendo Switch. Также добавлен драйвер для геймпадов Adafruit Seesaw, а на контроллере xpad включена поддержка контроллеров Lenovo Legion Go.
Также подчеркивается, что я знаю, что новый режим для блокировки прямой записи для блокировки устройств с смонтированными файловыми системами. При включении этого режима пользователь root не сможет вносить изменения в файловую систему путем манипуляций на уровне блочного устройства. Важно отметить, что этот режим по умолчанию отключен, и для его включения во время сборки необходимо указать параметр BLK_DEV_WRITE_MOUNTED.
Из другие изменения, которые выделяются:
- Добавлена первоначальная реализация драйвера для графического процессора Broadcom VideoCore 7.1, используемого в платах Raspberry Pi 5.
- Добавлен драйвер для графических процессоров серии PowerVR 6 на основе микроархитектуры Rogue от Imagination Technologies.
- Добавлена поддержка контроллеров Thunderbolt/USB4, интегрированных в чипы на базе микроархитектуры Intel Lunar Lake.
- AMD внесла изменения, связанные с поддержкой будущей серии процессоров на новой микроархитектуре Zen 5.
- Были добавлены системные вызовы listmount() и statmount(), позволяющие получать подробную информацию о смонтированных файловых системах из пользовательского пространства.
- В файловой системе XFS продолжается работа над возможностью использования утилиты fsck для проверки и устранения выявленных проблем в режиме онлайн, без размонтирования файловой системы.
- В Ext4 реализован вызов dioread_nolock для блоков размером меньше страницы памяти, что повышает производительность за счет устранения ненужных блокировок.
- В Btrfs добавлена поддержка флага монтирования nospace_cache для отключения кэша свободных блоков.
- AppArmor перешел на алгоритм SHA-256 для проверки правил, заменив предыдущие хэши SHA-1.
- Функция strlcpy(), включенная в Glibc 2.38 C, была удалена из ядра. Эта функция является альтернативой strncpy() с защитой от переполнения буфера.
- В KVM добавлена поддержка подсистемы Guest_memfd (guest Memory First), которая предоставляет функции управления памятью для организации конфиденциальных вычислений в гостевой среде.
Наконец, если вам интересно узнать об этом больше, вы можете ознакомиться с подробностями По следующей ссылке.