Основни иновации
- Механизмът pidfd ви позволява да присвоите конкретен PID на процес. Фиксирането продължава, след като процесът бъде прекратен, така че PID да може да му бъде издаден, когато започне отново. Детайли.
- Ограничения на честотните диапазони в планировчика на процеси. Например критичните процеси могат да се изпълняват при минимален праг на честота (да речем не по-малко от 3 GHz), а процесите с нисък приоритет могат да се изпълняват при праг на по-висока честота (например не повече от 2 GHz). Детайли.
- Поддръжка за видео чипове от семейството AMD Navi (RX5700) в драйвера amdgpu. Реализирана е цялата необходима функционалност, включително видео кодиране/декодиране и управление на захранването.
- Напълно работещ на x86-съвместими процесори Zhaoxin, създадени в резултат на сътрудничеството между VIA и правителството на Шанхай.
- Подсистема за управление на захранването, използваща технологията Intel Speed Select, характерна за някои процесори от семейството Xeon. Технологията се отличава със способността си за фина настройка на производителността за всяко процесорно ядро.
- Енергийно ефективен механизъм за изчакване на процеса на потребителско пространство, използващ инструкции umwait за процесори Intel Tremont. Детайли.
- Диапазонът 0.0.0.0/8 е одобрен за използване, което дава 16 милиона нови IPv4 адреса. Детайли.
- Гъвкав, лек ACRN хипервизор, много подходящ за управление на IoT системи (Интернет на нещата). Детайли.
По-долу са някои други промени.
Основна част на ядрото
- Поддръжка за компресиране на фърмуера във формат xz, което ви позволява да намалите директорията /lib/firmware от ~420 MB на ~130 MB.
- Нов вариант на системното извикване clone() с възможност за задаване на повече флагове. Детайли.
- Автоматичен избор на по-голям шрифт за високи резолюции в конзолата.
- Опцията CONFIG_PREEMPT_RT маркира бързото интегриране на набор от RT пачове в основния клон на ядрото.
Файлова подсистема
- BULKSTAT и INUMBERS системни извиквания за XFS v5 и също така започна работа по внедряване на многопоточно преминаване на inode.
- Btrfs вече използва бързи контролни суми (crc32c) на всички архитектури.
- Флагът за неизменност (неизменност) вече се прилага стриктно за отваряне на файлове на Ext4. Реализирана поддръжка за дупки в директории.
- CEPH се научи да работи със SELinux.
- Механизмът smbdirect в CIFS вече не се счита за експериментален. Добавени криптографски алгоритми за SMB3.1.1 GCM. Повишена скорост на отваряне на файлове.
- F2FS може да хоства суап файлове; те работят в режим на директен достъп. Възможност за деактивиране на събирача на отпадъци с checkpoint=disable.
- NFS клиентите могат да установяват множество TCP връзки към сървър наведнъж чрез опцията за монтиране nconnect=X.
Подсистема памет
- Всеки dma-buf получава пълен inode. Директориите /proc/*/fd и /proc/*/map_files предоставят много подробна информация за използването на буфера shmem.
- Машината smaps показва отделна информация за анонимната памет, споделената памет и файловия кеш в smaps_rollup proc файла.
- Използването на rbtree за swap_extent подобри производителността, когато много процеси се разменяха активно.
- /proc/meminfo показва броя на vmalloc страниците.
- Възможностите на tools/vm/slabinfo са разширени по отношение на сортирането на кешовете по степен на фрагментация.
Виртуализация и сигурност
- Драйверът virtio-iommu за паравиртуализирано устройство, което позволява изпращане на IOMMU заявки без емулиране на адресни таблици.
- Драйверът virtio-pmem за достъп до устройства през физическото адресно пространство.
- Ускоряване на достъпа до метаданни за vhost. За TX PPS тестовете показват 24% увеличение на скоростта.
- Zerocopy е деактивирано по подразбиране за vhost_net.
- Ключовете за шифроване могат да бъдат прикачени към пространства от имена.
- Поддръжка на xxhash, изключително бърз некриптографски алгоритъм за хеширане, чиято скорост е ограничена само от производителността на паметта.
Мрежова подсистема
- Първоначална поддръжка за nexthop обекти, предназначени да подобрят скалируемостта на IPv4 и IPv6 маршрути.
- Netfilter се научи да разтоварва филтрирането към устройствата за хардуерно ускоряване. Добавена естествена поддръжка за проследяване на връзката за мостове.
- Нов модул за контрол на трафика, който ви позволява да манипулирате заглавките на MPLS пакети.
- Подсистемата isdn4linux е премахната.
- LE пингове са налични за Bluetooth.
Хардуерни архитектури
- Нови ARM платформи и устройства: Mediatek mt8183, Amlogic G12B, Kontron SMARC SoM, Google Cheza, devkit за Purism Librem5, Qualcomm Dragonboard 845c, Hugsun X99 TV Box и др.
- За x86 е добавен механизмът /proc/ /arch_status за показване на специфична за архитектурата информация, като последния път, когато AVX512 е използван.
- Оптимизирана производителност на VMX за KVM, скоростта на vmexit е увеличена с 12%.
- Добавена и актуализирана различна информация за процесорите Intel KabyLake, AmberLake, WhiskeyLake и Ice Lake.
- lzma и lzo компресия за uImage на PowerPC.
- Сигурна виртуална виртуализация за S390.
- Поддръжка на големи страници с памет за RISCV.
- Режим на пътуване във времето за потребителски режим Linux (забавяне и ускоряване на времето).
Драйвери на устройства
- HDR разпознаване на метаданни за amdgpu и i915 драйвери.
- Разширения на функционалността за Vega12 и Vega20 видео чипове в amdgpu.
- Многосегментна гама корекция за i915, както и асинхронно изключване на екрана и редица нови фърмуери.
- Видео драйверът на Nouveau се е научил да разпознава чипове от семейството TU116.
- Нови Bluetooth протоколи MediaTek MT7663U и MediaTek MT7668U.
- TLS TX HW разтоварване за Infiniband, както и подобрен мониторинг на хардуер и температура.
- Разпознаване на езерото Elkhart в HD Audio драйвера.
- Нови аудио устройства и кодеци: Conexant CX2072X, Cirrus Logic CS47L35/85/90, Cirrus Logic Madera, RT1011/1308.
- Apple SPI драйвер за клавиатура и тракпад.
- В подсистемата watchdog можете да зададете ограничение във времето за отваряне на /dev/watchdogN.
- Механизмът за контрол на честотата cpufreq се поддържа от imx-cpufreq-dt и Raspberry Pi.
Източник: linux.org.ru