Linux 7.1

No zwee Méint Entwécklung, Linus Torvalds agefouert kernel Verëffentlechung Linux 7.1. Среди наиболее заметных изменений: новый драйвер ntfsplus, первая стадия прекращения поддержки CPU i486, удаление старых Ethernet-адаптеров, удаление протоколов ISDN и AX.25, включение по умолчанию механизма Intel FRED, поддержка BPF-обработчиков в io_uring, оптимизация подсистемы подкачки, поддержка субпланировщиков в sched_ext, ввод/вывод в режиме zero-copy в драйвере ublk, ioctl-операция shutdown в Btrfs, динамическое переключение режима производительности в драйвере amd-pstate, поддержка xattr для Unix-сокетов.

Déi nei Versioun enthält 17275 Fixer vun 2589 Entwéckler, d'Patchgréisst ass 57 MB (d'Ännerunge betraff 13528 Dateien, 751785 Zeilen Code goufen derbäigesat, 405916 Zeilen goufen geläscht). Déi lescht Verëffentlechung hat 15624 Fixer vun 2477 Entwéckler, d'Patchgréisst war 56 MB. Ongeféier 41% vun all Ännerungen, déi am 7.1 agefouert goufen, bezéien sech op Apparat Chauffeuren, ongeféier 12% vun den Ännerungen si mat der Aktualiséierung vum Code spezifesch fir Hardwarearchitekturen bezunn, 14% si mat dem Netzwierkstack bezunn, 5% si mat Dateisystemer bezunn, an 3% si verbonne mat internen Kernel-Subsystemer.

Schlëssel nei Funktiounen am Kernel 7.1 (kernelnewbies.org, lwn.net, oppennet):

Disk Subsystem, I/O an Dateisystemer
  • В состав принята новая реализация файловой системы NTFS — ntfsplus, основанная на коде удалённого из ядра классического драйвера ntfs. Старый драйвер был переработан, расширен возможностью записи данных и адаптирован для поддержки современных возможностей, таких как использование tomes vun Säiten vun Erënnerung (folios) вместо структуры buffer_head. В новом драйвере реализовано отложенное выделение блоков, позволившее добиться высокой производительности операций записи и снижения фрагментации. Для буферизированных операций записи/чтения, прямого ввода/вывода, маппинга экстентов и операций страничной записи/чтения задействована библиотека iomap. В тестах iozone драйвер ntfsplus оказался на 3-5% быстрее ntfs3 при записи в однопоточном режиме и на 35-110% при использовании 4 потоков. Скорость чтения ntfsplus и ntfs3 находится примерно на одном уровне. Драйвер ntfs3 остаётся в составе ядра и в него agefouert исправления и небольшие улучшения.
  • Добавлена поддержка генерации и верификации данных проверки целостности T10 (deepwiki.com) на уровне файловой системы, а не блочного устройства, что позволяет добиться повышения производительности операций чтения.
  • В драйвер блочных устройств ublk, позволяющий вынести специфичную логику на сторону процесса в пространстве пользователя, dobäi поддержка ввода/вывода через разделяемую память без копирования данных между буферами (режим zero-copy).
  • Для самошифруемых блочных устройств SED-OPAL dobäi ioctl для управления режимом Eenzege Benotzer и реализована команда STACK_RESET.
  • В Btrfs объявлена стабильной поддержка ioctl-операции shutdown, позволяющей перевести ФС в состояние, при котором предпринимается попытка завершения выполнения уже запущенных операций, но блокируются все новые операции.
  • В exfat реализована возможность резервированием пустых областей через вызов fallocate().
  • В ФС CIFS добавлена поддержка создания временных файлов с флагом O_TMPFILE.
  • Am System Opruff fsmount() добавлена опция FSMOUNT_NAMESPACE, создающая новое пространство имён точек монитирования для монтируемой файловой системы. В системные вызовы clone3() и unshare() добавлены флаги для возвращения нового пространства имён точек монтирования, содержащего только примонтированную пустую ФС-заглушку на базе nullfs, драйвер fs-dax c ФС-интерфейсом к устройствам DAX (Direct Access).
  • В NFS-сервер dobäi защита от атак по подбору файловых дескрипторов, реализованная через заверение дескрипторов криптографической подписью. Защита включается через опцию монтирования sign_fh.
  • Dobäigesat символьный драйвер fs-dax, предоставляющий интерфейс для взаимодействия с устройствами DAX (kernel.org) (Direct Access), поддерживающими работу в обход страничного кэша. Указанный интерфейс необходим для интеграции в ядро файловой системы famfs, размещаемой в оперативной памяти.
  • В файловой системе Ceph ëmgesat сбор метрик о вводе/выводе в привязке к подразделам.
Erënnerung a System Servicer
  • Принята первая серия изменений для прекращения поддержки процессоров i486. Из Kconfig удалены опции для сборки ядра с поддержкой процессоров 486DX, 486SX и AMD ELAN (CONFIG_M486, CONFIG_M486SX и CONFIG_MELAN), а из Makefile исключены опции компиляции для систем i486 (-march=i486). Код для фактической поддержки работы на процессорах i486 пока оставлен в ядре, но сборка для подобных систем теперь потребует применения патчей к сборочным файлам. Причины удаления поддержки процессоров i486 обусловлены желанием избавить ядро от усложнённого кода, эмулирующего некоторые аппаратные операции, такие как CX8 (сравнить и обменять 8 байт) и TSC (счётчик циклов CPU, используемый в планировщике задач).
  • В драйвере amd-pstate, применяемом для управления энергопотреблением на системах с процессорами AMD, ëmgesat динамическое переключение настроек производительности и изменение поведения управления питанием в зависимости от работы от стационарного питания или аккумулятора. При стационарном подключении теперь активируется режим performance, а при работе от аккумулятора — balance_performance.
  • Задействован по умолчанию механизм Intel FRED (Flexible Return and Event Delivery), позволяющий повысить эффективность и надёжность доставки информации о низкоуровневых событиях. Повышение производительности и сокращение задержек обеспечивается благодаря возвращению событий при помощи процессорной инструкции IRET вместо передачи событий через таблицу IDT (Interrupt Descriptor Table). Повышение надёжности достигается благодаря раздельной обработке поступления события в контексте ядра и контексте пользователя, защиты от вложенного выполнения NMI и сохранения в расширенном кадре стека всех связанных с исключением регистров CPU.
  • В подсистему perf dobäi поддержка блоков мониторинга производительности памяти (PMU — Performance Monitoring Unit), используемых в SoC NVIDIA Tegra410.
  • Ускорено выполнение операций futex на системах ARM, благодаря задействованию инструкций Arm 9.6 LSUI, позволяющих ядру обращаться к памяти пространства пользователя без предварительного отключения режима защиты PAN (arm.com) (Privileged Access Never).
  • На системах с процессорами ARM улучшена поддержка расширения архитектуры набора команд MPAM (Memory System Resource Partitioning and Monitoring) и добавлена возможность её использования в пространстве пользователя для управления ресурсами через механизм resctrl. MPAM обеспечивает пометку каждого обращения к памяти идентификатором секции (PARTID, Partition ID) и идентификатором группы мониторинга (PMG, Monitoring Group ID). В привязке к PARTID можно ограничить потребление ресурсов, таких как пропускная способность памяти или размер кэша, что бы какая-то группа задач не заняла все ресурсы. В контексте мониторинга сочетание PMG и PARTID можно использовать для отслеживание потребления ресурсов памяти при определённых видах нагрузки.
  • Dobäigesat возможность использования режима реального времени (PREEMPT_RT) на 32-разрядных процессорах ARM. Ранее поддержка PREEMPT_RT была обеспечена для архитектур x86 и x86-64, ARM64, RISC-V и LoongArch.
  • Am System Opruff clone3() добавлены новые флаги: CLONE_NNP — e Verbuet получения новых привилегий в созданном процессе; CLONE_AUTOREAP — автоматическое завершение процесса вместо его превращения в процесс-зомби до выполнения функции wait() родительским процессом; CLONE_PIDFD_AUTOKILL — завершение дочернего процесса в случае закрытия связанного с ним дескриптора pidfd (например, при завершении родительского процесса).
  • Для каждого модуля ядра в каталог /sys/module добавлен файл import_ns, содержащий список импортированных пространств имён символов (symbol namespace).
  • В систему асинхронного ввода/вывода io_uring добавлена поддержка использования подсистемы BPF для создания обработчиков. Например, можно заменить основной цикл диспетчеризации на BPF-программу.
  • Am BPF Subsystem модернизирован анализ использования стека, что значительно ускорило проверку верификатором многих BPF-программ.
  • С целью оптимизации производительности ëmgeschriwwen подсистема hrtimer (high resolution timer). Планировщик задач теперь может использовать таймеры с высоким разрешением без потери производительности вместо менее точных таймеров.
  • weider перенос изменений из ветки Rust-for-Linux, am Zesummenhang mat der Notzung vun der Rust-Sprooch als zweet Sprooch fir d'Entwécklung vu Treiber a Kernelmoduler (Rust-Ënnerstëtzung ass standardméisseg net aktiv, an et féiert net dozou, datt Rust an d'Lëscht vun den obligatoresche Build-Ofhängegkeeten fir de Kernel abegraff ass). Bis zu der Versioun 1.85 (ausgeliwwert an Debian 13) повышены требования к версии Rust, необходимой для сборки компонентов ядра. Добавлена экспериментальная Kconfig-опция CONFIG_RUST_INLINE_HELPERS для встраивания Си-прослоек в Rust-код во время компиляции (оптимизация ускорила работу блочного драйвера null на 2%). Добавлен макрос ‘const_assert!’. Расширены возможности модулей sizes, clk, ptr, sync, error.
  • An de Mechanismus SCHED_EXT, позволяющий использовать BPF для создания планировщиков CPU, dobäi начальная возможность создания вложенных планировщиков (sub-scheduler), при помощи которых для каждого cgroup можно задействовать собственный планировщик задач.
  • Продолжена оптимизация подсистемы подкачки (swap). Удалена старая структура swap_map, заменённая на механизм «Dësch austauschen». Изменение позволило повысить производительность и уменьшить потребление памяти в подсистеме подкачки.
  • В подсистему DEMON (Data Access MONitor), позволяющую отслеживать доступ процесса к данным в оперативной памяти (например, можно узнать к каким областям памяти обращался процесс, а какие области памяти остались невостребованными), dobäi поддержка разных алгоритмов автоматического tuning квот.
  • В подсистеме трассировки ëmgesat концепция внешних кольцевых буферов, позволяющая получать данные трассировки из виртуальных машин. Возможность задействована в гипервизорах KVM и nVHE для передачи данных трассировки из гостевой системы на сторону хоста.
  • В подсистему RV (kernel.org) (Runtime Verification), предназначенную для проверки корректности работы высоконадёжных систем, добавлены компоненты мониторинга «Stall» для отслеживания задач, выполнение которых временно приостановлено или заблокировано, и «Termin» для анализа поведения планировщика задач.
Virtualiséierung a Sécherheet
  • По умолчанию выставлен флаг PROC_MEM_FORCE_PTRACE, допускающий обход прав доступа к памяти процесса через файл /proc/PID/mem только для процессов, применяющих для отладки системный вызов ptrace().
  • Dobäigesat новый набор hook-ов для LSM-модулей (Linux Security Module), упрощающий реализацию политик для стековых файловых систем, таких как overlayfs. В LSM также dobäigesat hook для управления доступом к Unix-сокетам, который involvéiert в LSM-модуле Landlock для назначения политик доступа к Unix-сокетам.
  • Во встроенную криптобиблиотеку lib/crypto, предоставляющую более простые и быстрые функции, чем в традиционном crypto API, dobäi поддержка алгоритмов AES-CMAC, AES-XCBC-MAC, AES-CBC-MAC, GHASH и SM3. Добавлена Dokumentatioun по lib/crypto.
  • Реализован режим pKVM (Protected KVM) для строгой изоляции anonym Erënnerung с использованием расширений виртуализации для архитектуры AArch64. В данном режиме страницы памяти гостевой исключаются из таблицы виртуальных адресов хостовой системы.
  • В гипервизор KVM добавлена поддержка пятой версии виртуального контроллера прерываний ARM (VGICv5 — ARM Virtual Generic Interrupt Controller v5).
Netzwierk Subsystem
  • Для unix-сокетов, создаваемых функцией socket(), ëmgesat поддержка расширенных атрибутов файлов (xattr) user.*. Из областей применения отмечается выставление меток через расширенные атрибуты к Unix-сокетам, используемым для IPC Varlink, с целью их выделения из общей массы для инспектирования и отладки работы IPC при помощи BPF-программ. В systemd-journald расширенные атрибуты намерены использовать для определения формата лога в привязке к сокету /dev/log.
  • Geläscht поддержка протокола UDP-Lite (RFC 3828), допускающего доставку пакетов с неправильной контрольной суммой с расчётом на то, что, например, частично повреждённые аудио и видеоданные могут быть восстановлены на уровне кодека. Протокол удалён так как им никто не пользуется.
  • Geläscht возможность сборки стека IPv6 в форме модуля ядра, которая не применялась на практике (IPv6 либо встраивают в ядро, либо полностью отключают), но усложняла сопровождение так как при сборке IPv6 модулем ядра (CONFIG_IPV6=m), множество подсистем вынуждены добавлять бесполезные обработчики на случай выгрузки модуля IPv6.
Ausrüstung
  • Am AMDGPU-Treiber abegraff новый дисплейный движок (DC) для APU AMD серии HD 7000 (Sea Islands, GCN 1.1).
  • Am Nouveau Chauffer dobäi начальная поддержка GPU NVIDIA GA100 на базе микроархитектуры Ampere.
  • Продолжена работа над drm-драйвером (Direct Rendering Manager) Xe для GPU на базе архитектуры Intel Xe, которая используется в видеокартах Intel семейства Arc и интегрированной графике, начиная с процессоров Tiger Lake. Добавлена поддержка графической подсистемы процессоров Intel Nova Lake-P. Реализованы очищаемые буферные объекты (Purgeable Buffer Objects).
  • Mir hunn weiderhin Nova-Treiberkomponenten fir NVIDIA GPUs integréiert, déi mat GSP-Firmware ausgestatt sinn, déi zënter der NVIDIA GeForce RTX 2000 Serie baséiert op der Turing-Mikroarchitektur benotzt ginn. Den Treiber ass a Rust geschriwwen. Déi initial Ënnerstëtzung fir GPUs baséiert op der Turing-Mikroarchitektur gouf bäigefüügt.
  • Dobäigesat DRM-драйвер corebootdrm для вывода графики через фреймбуфер прошивок на базе CoreBoot.
  • Dobäigesat поддержка звуковых ASoC AMD RPL DMIC, Cirrus Logic CS42L43, CS47L47, NVIDIA CPCAP и WM8962. Улучшена поддержка звуковых устройств с интерфейсом USB: Huawei Headset, Focusrite Novation, MV-Silicon, Studio 1824, Arturia AF16Rig, Hotone Audio, Feaulle Rainbow, PreSonus AudioBox, Moondrop Ju Jiu, Scarlett 18i20.
  • Dobäigesat драйвер yogafan для отслеживания скорости вращения кулера на ноутбуках Lenovo Yoga, Legion и IdeaPad.
  • Dobäigesat поддержка ARM-плат, SoC и устройств: Qualcomm Glymur, Qualcomm Mahua, Qualcomm Eliza, Qualcomm IPQ5210, Qualcomm apq8084 и ipq806x, Axis ARTPEC-9, ARM Zena, ARM corstone-1000-a320, Microchip LAN9691, Microchip PIC64GX, Rockchip RV1103B, Renesas RZ/G3L, NXP S32N79.
  • Geläscht поддержка применяемых в SoC Baikal-T1 контроллеров AHCI SATA и PCIe, а также драйверов таймера, памяти, physmap, шины, hwmon, dwc и bt1-rom. В качестве причины удаления называется отсутствие сопровождения и незавершённая интеграция в состав ядра компонентов платформы Baikal, производство которой в РФ свернули в ноябре 2025 года.
  • Geläscht 12 драйверов для Ethernet-устройств с интерфейсами ISA и PCMCIA, выпускавшихся до 2002 года, для которых не нашлись пользователи, применяющие их в рабочих системах. Также из ядра исключены подсистема ISDN, реализации протоколов AX.25, CAIF и Bluetooth CMTP (Common ISDN Application Programming Interface Message Transport Protocol), драйверы yellowfin (Yellowfin Gigabit-NIC), hamachi (Hamachi GNIC-II), hamradio (Amateur Radio), inport и logibm (busmouse). Причиной удаления стало отсутствие активных сопровождающих на фоне увеличения числа выявляемых при помощи syzbot и AI-инструментов ошибок, которые никто не берётся исправлять и вся нагрузка нa устранение серьёзных проблем ложится на сопровождающих основные сетевые подсистемы ядра. Всего удалено более 140 тысяч строк кода.

Source: linux.org.ru

Kaaft zouverlässeg Hosting fir Site mat DDoS Schutz, VPS VDS Server 🔥 Kaaft zouverléissegt Websäithosting mat DDoS-Schutz, VPS VDS Server | ProHoster