Размер патча составил 65 МБ, изменения затронули 16180 файлов, плюс добавлено 1043240 строк кода.
Наиболее заметными и ожидаемыми изменениями ядра стали:
- детектор состояний гонки KCSAN;
- универсальный механизм доставки уведомлений в пространство пользователя;
- поддержка оборудования inline-шифрования;
- расширенные механизмы защиты для ARM64;
- возможность раздельного монтирования экземпляров procfs;
- реализация для ARM64 механизмов защиты Shadow Call Stack и BTI.
Еще ядро поддерживает российский процессор Baikal-T1.
Новшества разделяются на нескольких категорий. Это виртуализация и безопасность, память с системными сервисами, дисковая подсистема, файловые системы, сетевая подсистема и «железо».
40% изменений в новом ядре связано с драйверами, 16% — с обновлением кода для различных процессорных архитектур, 10% — с сетевым стеком, 3% — с файловыми системами.
Виртуализация и безопасность
- Добавлено создание отдельных экземпляров procfs, что дает возможность использовать сразу несколько точек монтирования с разными опциями. При этом отражается лишь одно пространство pid namespace.
- Появилась возможность блокировки загрузки модулей ядра с секциями с кодом, где разрешено исполнение и запись. Это изменение является частью проекта, цель которого — избавить ядро от страниц памяти, которые допускают одновременно как исполнение, так и запись.
- Платформа ARM64 получила поддержку механизма Shadow-Call Stack. Он предоставляет защиту от перезаписи адреса возврата из функции в случае переполнения буфера в стеке.
- Теперь есть поддержка оборудования для inline-шифрования блочных устройств (Inline Encryption).
- Добавлен параметр командной строки ядра initrdmem, что позволяет указать физический адрес размещения initrd в памяти при размещении начального загрузочного образа в ОЗУ.
- Эта же платформа получила поддержку инструкций ARMv8.5-BTI (Branch Target Indicator). Необходима она для защиты выполнения наборов инструкций, на которые не должны выполняться переходы при ветвлении.
- Появились новые capability: CAP_PERFMON — с доступом к подсистеме perf и выполнением мониторинга производительности; CAP_BPF — с разрешением выполнений некоторых операций с BPF.
- Благодаря новому устройству virtio-mem есть возможность задействовать горячее подключение с отключением памяти к гостевым системам.
- Реализована защита от уязвимости CROSSTalk/SRBDS.
Память и системные сервисы
- Появился универсальный механизм доставки уведомлений из ядра в пространство пользователя. Этот механизм основан на штатном драйвере pipe и дает возможность эффективно распределять уведомления от ядра по каналам, открытым в пространстве пользователя.
- В ядро добавлен отладочный инструмент KCSAN (Kernel Concurrency Sanitizer), который предназначен для динамического выявления состояний гонки внутри ядра.
- В Group появилась настройка memory.swap.high. Она предназначена для замедления задач, которые занимают слишком большой объем файла подкачки.
- Расширены возможности функциональности pidfd, которая позволяет обрабатывать ситуации с повторным использованием PID.
- Добавлен системный вызов faccessat2(). Он отличается от faccessat() дополнительным аргументом с флагами, которые соответствуют рекомендациям POSIX.
- Добавлен механизм BPF iterator. Он нужен для вывода в пространство пользователя содержимого структур ядра.
- Механизм padata получил поддержку многопоточных задач с балансировкой нагрузки.
- Теперь есть новый API выделения буферов (AF_XDP), который позволяет упростить написание XDP-сетевых драйверов.
- Как и планировалось ранее, появились рекомендации по использованию терминов ‘master / slave’ и ‘blacklist / whitelist’.

Дисковая подсистема, I/O, файловые системы
- F2FS получила поддержку сжатия с использованием алгоритма LZO-RLE.
- В CIFS появился параметр nodele, который допускает штатные проверки прав на сервере с одновременным запретом удаления файлов или каталогов для клиента.
- В Device Manager появился новый обработчик emulate block size. Он позволяет эмулировать логический блок меньшего размера. Пример — эмуляция 512-байтных секторов на дисках с размером сектора 4К.
- Ext4 теперь лучше обрабатывает ошибку EXOSPC при использовании многопоточности.
- Для Ext4 и XFS включена поддержка операций DAX в привязке к отдельным файлам и каталогам.
- В EXFAT теперь есть поддержка верификации загрузочной области.
- FAT получила упреждающую загрузку элементов ФС. Тест 2ТБ накопителя, подключенного по USB, занял 51 секунду вместо 383, как раньше.
Сетевая подсистема
- В ядре и утилите ethtool теперь появилась поддержка функций тестирования подключенного сетевого кабеля и самодиагностики сетевых устройств. Конечно, чтобы эта возможность работала, нужна и аппаратная поддержка, так что чисто программного ничего нового «не вырастет».
- В код управления работой сетевых мостов добавлена поддержка протокола Media Redundancy Protocol. Он позволяет обеспечить отказоустойчивость за счет «закольцовывания» нескольких Ethernet-коммутаторов.
- В IPv6-стеке теперь есть поддержка сжатия диапазонов в ответах выборочного подтверждения.
- Для IPv6 добавлена поддержка TCP-LD.
Оборудование
- DRM-драйвер i915 для видеокарт Intel получил по умолчанию поддержку чипов Intel Tiger Lake (GEN12). В свою очередь, чипы теперь совместимы с системой SAGV (System Agent Geyserville). Она позволяет подстраивать частоту и напряжение в зависимости от требований к энергопотреблению/производительности.
- Добавлена поддержка устройств Renesas RZ/G1H, Realtek RTD1195, Realtek RTD1395/RTD1619, Rockchips RK3326, AMLogic S905D, S905X3, S922XH, Olimex A20-OLinuXino-LIME-eMMC, Check Point L-50, Beacon i.MX8m-Mini, Qualcomm SDM660/SDM630, Xnano X5 TV Box, Stinger96, Beaglebone-AI.
- Появилась поддержка датчиков энергопотребления процессоров AMD Zen и Zen 2, плюс датчиков температуры AMD Ryzen 4000 Renoir.
- В драйвер amdgpu добавлена поддержка пиксельного формата FP16 с реализацией возможности работы с оцифрованными буферами в видеопамяти.
- Драйвер Nouveau получил поддержку формата модификаторов NVIDIA.
- В драйвере MSM (Qualcomm) теперь есть поддержка GPU Adreno A405, A640 и A650.
- Поддерживаются смартфоны Xiaomi Redmi Note 7, Samsung Galaxy S2 и ноутбуки Elm/Hana Chromebook.
- Появилась поддержка российского процессора Baikal-T1 и системы на кристалле BE-T1000.
После релиза ядра латиноамериканский фонд свободного ПО выложил вариант свободного ядра Linux-libre 5.8-gnu. В нем нет несвободных компонентов или участков кода, использование которых ограничено производителем.