Профиль: Аноним (вход | регистрация) неRU opennet.me  
The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Релиз ядра Linux 7.1

14.06.2026 23:23 (MSK)

После двух месяцев разработки Линус Торвальдс представил релиз ядра 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-сокетов.

В новую версию принято 17275 исправлений от 2589 разработчиков, размер патча - 57 МБ (изменения затронули 13528 файлов, добавлено 751785 строк кода, удалено 405916 строк). В прошлом выпуске было 15624 исправлений от 2477 разработчиков, размер патча - 56 МБ. Около 41% всех представленных в 7.1 изменений связаны с драйверами устройств, примерно 12% изменений имеют отношение к обновлению кода, специфичного для аппаратных архитектур, 14% связано с сетевым стеком, 5% - с файловыми системами и 3% c внутренними подсистемами ядра.

Основные новшества в ядре 7.1 (1, 2, 3):

  • Дисковая подсистема, ввод/вывод и файловые системы
    • В состав принята новая реализация файловой системы NTFS - ntfsplus, основанная на коде удалённого из ядра классического драйвера ntfs. Старый драйвер был переработан, расширен возможностью записи данных и адаптирован для поддержки современных возможностей, таких как использование фолиантов страниц памяти (folios) вместо структуры buffer_head. В новом драйвере реализовано отложенное выделение блоков, позволившее добиться высокой производительности операций записи и снижения фрагментации. Для буферизированных операций записи/чтения, прямого ввода/вывода, маппинга экстентов и операций страничной записи/чтения задействована библиотека iomap. В тестах iozone драйвер ntfsplus оказался на 3-5% быстрее ntfs3 при записи в однопоточном режиме и на 35-110% при использовании 4 потоков. Скорость чтения ntfsplus и ntfs3 находится примерно на одном уровне. Драйвер ntfs3 остаётся в составе ядра и в него внесены исправления и небольшие улучшения.
    • Добавлена поддержка генерации и верификации данных проверки целостности T10 на уровне файловой системы, а не блочного устройства, что позволяет добиться повышения производительности операций чтения.
    • В драйвер блочных устройств ublk, позволяющий вынести специфичную логику на сторону процесса в пространстве пользователя, добавлена поддержка ввода/вывода через разделяемую память без копирования данных между буферами (режим zero-copy).
    • Для самошифруемых блочных устройств SED-OPAL добавлены ioctl для управления режимом Single User и реализована команда STACK_RESET.
    • В Btrfs объявлена стабильной поддержка ioctl-операции "shutdown", позволяющей перевести ФС в состояние, при котором предпринимается попытка завершения выполнения уже запущенных операций, но блокируются все новые операции.
    • В exfat реализована возможность резервированием пустых областей через вызов fallocate().
    • В ФС CIFS добавлена поддержка создания временных файлов с флагом O_TMPFILE.
    • В системный вызов fsmount() добавлена опция FSMOUNT_NAMESPACE, создающая новое пространство имён точек монитирования для монтируемой файловой системы. В системные вызовы clone3() и unshare() добавлены флаги для возвращения нового пространства имён точек монитирования, содержащего только примонтированную пустую ФС-заглушку на базе nullfs, драйвер fs-dax c ФС-интерфейсом к устройствам DAX (Direct Access).
    • В NFS-сервер добавлена защита от атак по подбору файловых дескрипторов, реализованная через заверение дескрипторов криптографической подписью. Защита включается через опцию монтирования sign_fh.
    • Добавлен символьный драйвер fs-dax, предоставляющий интерфейс для взаимодействия с устройствами DAX (Direct Access), поддерживающими работу в обход страничного кэша. Указанный интерфейс необходим для интеграции в ядро файловой системы famfs, размещаемой в оперативной памяти.
    • В файловой системе Ceph реализован сбор метрик о вводе/выводе в привязке к подразделам.
  • Память и системные сервисы
    • Принята первая серия изменений для прекращения поддержки процессоров 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, реализовано динамическое переключение настроек производительности и изменение поведения управления питанием в зависимости от работы от стационарного питания или аккумулятора. При стационарном подключении теперь активируется режим "performance", а при работе от аккумулятора - "balance_performance".
    • Задействован по умолчанию механизм Intel FRED (Flexible Return and Event Delivery), позволяющий повысить эффективность и надёжность доставки информации о низкоуровневых событиях. Повышение производительности и сокращение задержек обеспечивается благодаря возвращению событий при помощи процессорной инструкции IRET вместо передачи событий через таблицу IDT (Interrupt Descriptor Table). Повышение надёжности достигается благодаря раздельной обработке поступления события в контексте ядра и контексте пользователя, защиты от вложенного выполнения NMI и сохранения в расширенном кадре стека всех связанных с исключением регистров CPU.
    • В подсистему perf добавлена поддержка блоков мониторинга производительности памяти (PMU - Performance Monitoring Unit), используемых в SoC NVIDIA Tegra410.
    • Ускорено выполнение операций futex на системах ARM, благодаря задействованию инструкций Arm 9.6 LSUI, позволяющих ядру обращаться к памяти пространства пользователя без предварительного отключения режима защиты PAN (Privileged Access Never).
    • На системах с процессорами ARM улучшена поддержка расширения архитектуры набора команд MPAM (Memory System Resource Partitioning and Monitoring) и добавлена возможность её использования в пространстве пользователя для управления ресурсами через механизм resctrl. MPAM обеспечивает пометку каждого обращения к памяти идентификатором секции (PARTID, Partition ID) и идентификатором группы мониторинга (PMG, Monitoring Group ID). В привязке к PARTID можно ограничить потребление ресурсов, таких как пропускная способность памяти или размер кэша, что бы какая-то группа задач не заняла все ресурсы. В контексте мониторинга сочетание PMG и PARTID можно использовать для отслеживание потребления ресурсов памяти при определённых видах нагрузки.
    • Добавлена возможность использования режима реального времени (PREEMPT_RT) на 32-разрядных процессорах ARM. Ранее поддержка PREEMPT_RT была обеспечена для архитектур x86 и x86-64, ARM64, RISC-V и LoongArch.
    • В системный вызов clone3() добавлены новые флаги: CLONE_NNP - запрет получения новых привилегий в созданном процессе; CLONE_AUTOREAP - автоматическое завершение процесса вместо его превращения в процесс-зомби до выполнения функции wait() родительским процессом; CLONE_PIDFD_AUTOKILL - завершение дочернего процесса в случае закрытия связанного с ним дескриптора pidfd (например, при завершении родительского процесса).
    • Для каждого модуля ядра в каталог /sys/module добавлен файл import_ns, содержащий список импортированных пространств имён символов (symbol namespace).
    • В систему асинхронного ввода/вывода io_uring добавлена поддержка использования подсистемы BPF для создания обработчиков. Например, можно заменить основной цикл диспетчеризации на BPF-программу.
    • В подсистеме BPF модернизирован анализ использования стека, что значительно ускорило проверку верификатором многих BPF-программ.
    • С целью оптимизации производительности переписана подсистема hrtimer (high resolution timer). Планировщик задач теперь может использовать таймеры с высоким разрешением без потери производительности вместо менее точных таймеров.
    • Продолжен перенос изменений из ветки Rust-for-Linux, связанных с использованием языка Rust в качестве второго языка для разработки драйверов и модулей ядра (поддержка Rust не активна по умолчанию, и не приводит ко включению Rust в число обязательных сборочных зависимостей к ядру). До версии 1.85 (поставляется в Debian 13) повышены требования к версии Rust, необходимой для сборки компонентов ядра. Добавлена экспериментальная Kconfig-опция CONFIG_RUST_INLINE_HELPERS для встраивания Си-прослоек в Rust-код во время компиляции (оптимизация ускорила работу блочного драйвера null на 2%). Добавлен макрос 'const_assert!'. Расширены возможности модулей 'sizes', 'clk', 'ptr', 'sync', 'error'.
    • В механизм SCHED_EXT, позволяющий использовать BPF для создания планировщиков CPU, добавлена начальная возможность создания вложенных планировщиков (sub-scheduler), при помощи которых для каждого cgroup можно задействовать собственный планировщик задач.
    • Продолжена оптимизация подсистемы подкачки (swap). Удалена старая структура swap_map, заменённая на механизм "Swap Table". Изменение позволило повысить производительность и уменьшить потребление памяти в подсистеме подкачки.
    • В подсистему DAMON (Data Access MONitor), позволяющую отслеживать доступ процесса к данным в оперативной памяти (например, можно узнать к каким областям памяти обращался процесс, а какие области памяти остались невостребованными), добавлена поддержка разных алгоритмов автоматического тюнинга квот.
    • В подсистеме трассировки реализована концепция внешних кольцевых буферов, позволяющая получать данные трассировки из виртуальных машин. Возможность задействована в гипервизорах KVM и nVHE для передачи данных трассировки из гостевой системы на сторону хоста.
    • В подсистему RV (Runtime Verification), предназначенную для проверки корректности работы высоконадёжных систем, добавлены компоненты мониторинга "stall" для отслеживания задач, выполнение которых временно приостановлено или заблокировано, и "deadline" для анализа поведения планировщика задач.
  • Виртуализация и безопасность
    • По умолчанию выставлен флаг PROC_MEM_FORCE_PTRACE, допускающий обход прав доступа к памяти процесса через файл /proc/PID/mem только для процессов, применяющих для отладки системный вызов ptrace().
    • Добавлен новый набор hook-ов для LSM-модулей (Linux Security Module), упрощающий реализацию политик для стековых файловых систем, таких как overlayfs. В LSM также добавлен hook для управления доступом к Unix-сокетам, который задействован в LSM-модуле Landlock для назначения политик доступа к Unix-сокетам.
    • Во встроенную криптобиблиотеку lib/crypto, предоставляющую более простые и быстрые функции, чем в традиционном crypto API, добавлена поддержка алгоритмов AES-CMAC, AES-XCBC-MAC, AES-CBC-MAC, GHASH и SM3. Добавлена документация по lib/crypto.
    • Реализован режим pKVM (Protected KVM) для строгой изоляции анонимной памяти с использованием расширений виртуализации для архитектуры AArch64. В данном режиме страницы памяти гостевой исключаются из таблицы виртуальных адресов хостовой системы.
    • В гипервизор KVM добавлена поддержка пятой версии виртуального контроллера прерываний ARM (VGICv5 - ARM Virtual Generic Interrupt Controller v5).
  • Сетевая подсистема
    • Для unix-сокетов, создаваемых функцией socket(), реализована поддержка расширенных атрибутов файлов (xattr) "user.*". Из областей применения отмечается выставление меток через расширенные атрибуты к Unix-сокетам, используемым для IPC Varlink, с целью их выделения из общей массы для инспектирования и отладки работы IPC при помощи BPF-программ. В systemd-journald расширенные атрибуты намерены использовать для определения формата лога в привязке к сокету /dev/log.
    • Удалена поддержка протокола UDP-Lite (RFC 3828), допускающего доставку пакетов с неправильной контрольной суммой с расчётом на то, что, например, частично повреждённые аудио и видеоданные могут быть восстановлены на уровне кодека. Протокол удалён так как им никто не пользуется.
    • Убрана возможность сборки стека IPv6 в форме модуля ядра, которая не применялась на практике (IPv6 либо встраивают в ядро, либо полностью отключают), но усложняла сопровождение так как при сборке IPv6 модулем ядра (CONFIG_IPV6=m), множество подсистем вынуждены добавлять бесполезные обработчики на случай выгрузки модуля IPv6.
  • Оборудование
    • В драйвере AMDGPU включён новый дисплейный движок (DC) для APU AMD серии HD 7000 (Sea Islands, GCN 1.1).
    • В драйвер Nouveau добавлена начальная поддержка GPU NVIDIA GA100 на базе микроархитектуры Ampere.
    • Продолжена работа над drm-драйвером (Direct Rendering Manager) Xe для GPU на базе архитектуры Intel Xe, которая используется в видеокартах Intel семейства Arc и интегрированной графике, начиная с процессоров Tiger Lake. Добавлена поддержка графической подсистемы процессоров Intel Nova Lake-P. Реализованы очищаемые буферные объекты (Purgeable Buffer Objects).
    • Продолжена интеграция компонентов драйвера Nova для GPU NVIDIA, оснащённых GSP-прошивками, используемыми начиная с серии NVIDIA GeForce RTX 2000 на базе микроархитектуры Turing. Драйвер написан на языке Rust. Добавлена начальная поддержка GPU на базе микроархитектуры Turing.
    • Добавлен DRM-драйвер corebootdrm для вывода графики через фреймбуфер прошивок на базе CoreBoot.
    • Добавлена поддержка звуковых 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.
    • Добавлен драйвер yogafan для отслеживания скорости вращения кулера на ноутбуках Lenovo Yoga, Legion и IdeaPad.
    • Добавлена поддержка 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.
    • Удалена поддержка применяемых в SoC Baikal-T1 контроллеров AHCI SATA и PCIe, а также драйверов таймера, памяти, physmap, шины, hwmon, dwc и bt1-rom. В качестве причины удаления называется отсутствие сопровождения и незавершённая интеграция в состав ядра компонентов платформы Baikal, производство которой в РФ свернули в ноябре 2025 года.
    • Удавлены 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 тысяч строк кода.


  1. Главная ссылка к новости (https://lore.kernel.org/lkml/C...)
  2. OpenNews: Релиз ядра Linux 7.0
  3. OpenNews: Релиз ядра Linux 6.19
  4. OpenNews: Релиз ядра Linux 6.18
  5. OpenNews: Релиз ядра Linux 6.17
  6. OpenNews: Релиз ядра Linux 6.16
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/65686-kernel
Ключевые слова: kernel, linux
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (9) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.2, Kerr (ok), 23:56, 14/06/2026 [ответить]  
  • +/
    Какой из драйверов NTFS теперь будет использоваться по умолчанию если их теперь два?
     
     
  • 2.5, Аноним (5), 00:05, 15/06/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это тебе не винда, чтобы что-то было по умолчанию.
     
     
  • 3.6, Kerr (ok), 00:08, 15/06/2026 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Мне не следовало ожидать адекватного ответа от токсичных анонимов на Opennet
     
     
  • 4.8, Аноним (8), 00:22, 15/06/2026 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну дак а чем его ответ не устроил? Какой в конфиге укажешь, тот и будет. "По-умолчанию" скорее всего вообще никакой.
     
     
  • 5.9, Аноним (9), 00:36, 15/06/2026 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.10, ананим.orig (?), 00:44, 15/06/2026 [^] [^^] [^^^] [ответить]  
  • +/
    Ядро не монтирует файловые системы автоматом.
    А вот в утилите mount есть флаг -t auto (который используется, если не указан), вот по конкретной версии mount маны и смотрите.
    Тоже и с другими системами монтирования

    Зыж
    И не надо на анонимов гнать.
    Вот тут ниже новости были, где комменты могли оставлять только зарегистрированные, во срач бредовй получился, любо-дорого что говорится.

     

  • 1.3, Аноним (3), 23:58, 14/06/2026 [ответить]  
  • +1 +/
    А что там про поддержку NearLink который вроде как китайская замена вечно дырявого синезуба?
     
  • 1.4, Аноним (4), 00:00, 15/06/2026 [ответить]  
  • +/
    >включение по умолчанию механизма Intel FRED

    В Panther Lake кстати технология уже реализована, AMD тоже скоро внедрит:
    https://3dnews.ru/1136362/

     
  • 1.7, Аноним (7), 00:13, 15/06/2026 [ответить]  
  • +1 +/
    Часть кода удаляется, часть кода переписывается на раст. Скоро всё навернётся.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2026 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру