Выпуск Linux 5.16 – Основные изменения, архитектуры Arm, RISC-V и MIPS

Линус Торвальдс только что объявил о выпуске Linux 5.16:

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

Основные изменения включают исправления драйверов (преимущественно сетевых и rdma), устранение проблемы использования учётных данных cgroup, несколько исправлений базовой сети, пару отменённых изменений и прочие незначительные правки. Приложенный краткий журнал настолько мал, что его можно просто пролистать.

Это означает, что окно слияния для версии 5.17 откроется завтра. Уже получено несколько предварительных запросов на включение. Окно слияния может быть осложнено необходимостью поездки по семейным обстоятельствам, поэтому большая часть работы будет выполняться на ноутбуке в дороге – чего обычно стараются избегать.

Процесс слияния технически выполним на ноутбуке, но обычно требуется более активное локальное тестирование сборок между слияниями, чем позволяют возможности ноутбука. Поэтому основным недостатком в поездке станет повышенная зависимость от автоматизированного тестирования сборок в облаке. Остаётся надеяться, что все изменения должным образом протестированы в linux-next, чтобы избежать неожиданных проблем при попадании в основное дерево.

Автоматизированное тестирование сборок достаточно эффективно, а работа с linux-next организована хорошо, поэтому локальные сборки не столь критичны. Иногда возникают проблемы, которые не должны были дойти до основного дерева, но это происходит редко и обычно не носит серьёзного характера.

Будем надеяться на лучшее.

Особых проблем не ожидается, но возможны задержки в реакции из-за смены часовых поясов и джетлага.

До открытия окна слияния остаётся время для тестирования нового выпуска ядра.

Линус

Предыдущий Linux 5.15 был релизом с долгосрочной поддержкой (LTS), добавившим реализацию файловой системы NTFS от Paragon Software с поддержкой чтения/записи, внутриядерный SMB 3 сервер ksmbd, лёгкий механизм мониторинга доступа к памяти DAMON (Data Access MONitor) для отслеживания шаблонов доступа к памяти определённых пользовательских процессов и другие улучшения.

Linux 5.16 release

Ключевые обновления и дополнения в ядре Linux 5.16 включают:

  • Отслеживание состояния файловых систем – Добавлено новое событие fanotify типа FAN_FS_ERROR для общесистемного сообщения об ошибках файловых систем, предназначенное для демонов мониторинга. На данный момент только Ext-4 поддерживает этот интерфейс. Подробности в документации .
  • Ускоренное управление памятью с инфраструктурой фолио – Доступная оперативная память разделяется на небольшие единицы (страницы), размер которых часто измеряется в КБ. На системах с десятками ГБ RAM количество страниц становится чрезмерно большим. В Linux 5.16 вводится концепция фолио страниц – аналог составных страниц с улучшенной семантикой, повышающий производительность в типовых сценариях. Внедрение «фолио страниц» вызвало дискуссии. Детали в статье на LWN.net или видео .
  • Повышение производительности Wine и Linux-игр через системный вызов futex_waitv() – futex_waitv(2) позволяет ожидать несколько объектов futex за один системный вызов. Основное применение – эмуляция вызова Windows «WaitForMultipleObjects», что улучшает производительность игр в Wine. Нативные Linux-игры также могут использовать этот интерфейс. Подробности в документации .

Изменения для Arm в Linux 5.16

  • Allwinner
    • Allwinner R329 – Драйвер watchdog
    • Обновления дерева устройств:
      • Исправления схем DT
      • Поддержка I2S для R40
      • Поддержка HDMI для Pinetab
      • Поддержка devfreq для GPU A64
  • Rockchip
    • Добавлено выключение питания для Rockchip RK817 PMIC
    • ASoC – Поддержка Rockchip RV1126 и RK3568
    • Добавлена поддержка Rockchip RK3566/RK3568
    • Слияние v5 контроллера Rockchip I2S/TDM
    • Дерево устройств
      • Добавлены привязки DT для контроллера PCIe SoC Rockchip
      • Активация SFC для Odroid Go Advance , PX30
      • включение spdif на Quartz64 A
    • Новые платы и устройства
      • Плата Firefly ROC-RK3399-PC-PLUS SBC в мини-ПК Station P1
      • Плата Firefly ROC-RK3328-PC SBC в Geek PC Station M1
  • Amlogic
    • Amlogic Meson6/8/8b/8m2 содержат ядро ARC для восстановления системы после приостановки; добавлен новый драйвер remoteproc для его загрузки.
    • Драйвер тактирования – Обновлены частоты, связанные с видеотрактом, для Amlogic meson8
    • Незначительные оптимизации и добавление идентификатора SoC S905Y2
    • Изменения в DT ARM64 для Amlogic в Linux 5.16:
      • добавлена линия сброса Ethernet PHY для ODROID-C4/HC4
      • добавлены узлы воспроизведения аудио для rbox-pro
      • Исправлены свойства питания pwm-регулятора
      • meson-g12b-odroid-n2: добавлен отсутствующий GPIO 5v регулятора
    • Новые платы
      • Radxa Zero (S905Y2)
      • Контроллеры автоматизации Jethub D1 (A113X) и H1 (S905W)
  • Samsung
    • Добавлена поддержка Samsung Exynos Auto V9
    • Обновления драйвера тактирования
      • Первоначальный драйвер тактирования для Exynos850
      • Рефакторинг кода CPU-частот и преобразование драйвера тактирования CPU Exynos5433 в платформенный драйвер
      • Несколько переходов на devm_platform_ioremap_resource()
      • Обновления справочного текста Samsung Kconfig
    • Незначительное исправление теоретической проблемы обработки ошибок настройки IRQ в S3C24xx и оптимизация кода S3C64xx.
    • Изменения в DT ARM для Linux 5.16
      • Незначительные оптимизации – удаление недокументированных/неиспользуемых свойств, стиль кода
      • Добавлено свойство chassis-type
    • Изменения в DT ARM64
      • Приведение Exynos5433 DTS в соответствие с dtschema.
      • Базовая поддержка SoC Exynos Auto v9 и платы SADK (Samsung Automotive Development Kit). Exynos Auto v9 предназначен для автомобильных информационно-развлекательных систем (IVI) и систем помощи водителю (ADAS).
      • Добавлено свойство chassis-type.
      • Добавление узла ChipID в ExynosAutov9 DTSI.
  • Qualcomm
    • Поддержка Qualcomm Snapdragon 690 (также известный как SM6350)
    • Поддержка Snapdragon 750G (SM7225), как в Fairphone 4
    • Pinctrl
      • Новые поддрайверы для Qualcomm SM6350, QCM2290 и PM6350
      • Преобразование драйвера GPIO Qualcomm PMIC SSBI и SPMI MPP для использования иерархических прерываний.
      • Преобразование привязок дерева устройств Qualcomm PMIC MPP в YAML
      • Исправление проблемы Kconfig в драйвере Qualcomm, реализация errata для dual-edge в Qualcomm SDM845, исправление смещений регистров для UFS и SDC в драйвере Qualcomm SM8350
    • Clock driver
      • Поддержка GCC и RPMcc для SoC Qualcomm QCM2290
      • Поддержка GCC для SoC Qualcomm MSM8994/MSM8992
      • Поддержка LPASSCC и CAMCC для SoC Qualcomm SC7280
    • Добавление записи для драйвера контроллера NAND Qualcomm
    • Драйвер контроллера PCIe Qualcomm:
      • Добавление совместимой строки SC8180x
      • Добавление драйвера контроллера конечной точки и привязки DT
      • Реструктуризация для использования of_device_get_match_data()
      • Добавление обработки pcie_1_pipe_clk_src для SC7280
    • Networking
      • Коммутатор Ethernet Qualcomm (qca8k): поддержка QCA8328
      • Различные обновления для WiFi Qualcomm (ath11k) — поддержка полос 80P80 и 160 МГц, поддержка канала 2 в диапазоне 6 ГГц и т.д.
      • WiFi для телефонных SoC Qualcomm (wcn36xx) — включение энергосбережения в режиме ожидания (IMPS) для снижения энергопотребления в простое
    • Драйвер SPI — Qualcomm SC7280 и SC7180
    • PHY — поддержка USB2 и USB3 для Qualcomm QCM2290
    • Добавлен драйвер «sleep stats» Qualcomm, который помогает переводить различные платформы Qualcomm в режим пониженного энергопотребления.
    • Обновления DTS ARM64 для Linux 5.16
      • Исправления и очистка для MSM8916
      • MSM8998 — описания мультимедийного контроллера тактовых сигналов и IOMMU, GPU и его выделенного IOMMU.
      • IPA6018 — добавлены контроллер USB и PHY
      • IPQ8074 — описание контроллера SPMI.
      • SC7280 получает QSPI, низкоскоростные интерфейсы (i2c/spi/uart), GPU, тепловые зоны, модем, топологию CPU и обновленную карту памяти.
      • SDM845 — повышение температуры троттлинга оборудования с ~70°C до 95°C, что дает до 30% улучшения в тестах. С учетом аппаратного троттлинга и теплового давления устройства охлаждения CPU удалены.
      • И т.д.
    • Обновления defconfig ARM64:
      • Отключена загрузка прошивки через запасной механизм в пользовательском пространстве
      • Включен новый драйвер limits, управляющий аппаратным тепловым регулированием на ряде платформ Qualcomm.
      • Включены драйверы WiFi и Bluetooth prima/pronto
      • Включены драйверы SC7280, необходимые для загрузки платформы
    • Новые устройства и платы
      • 11 новых смартфонов, включая Fxtec Pro1 QX1000, Sony Xperia XZ1, Xperia XZ1 Compact, Xperia XZ Premium, Xperia 10 III, Xiaomi Mi 5 и Xiaomi Mi Note 2
      • 3 дополнительных Chromebook
  • MediaTek
    • PCIe – Добавлен драйвер контроллера PCIe MediaTek MT7621 и привязки для Device Tree
    • WiFi MediaTek (mt76)
      • MT7921 – Поддержка ASPM, 6 ГГц, SDIO и тестового режима
      • MT7915 – Поддержка LED и TWT
    • Драйвер Bluetooth для MediaTek MT7922 и MT7921
    • Улучшена поддержка SoC MT81xx для Chromebook и сетевых SoC MT76xx
  • Другие платформы Arm и SoC (Сводка: добавлено 60 новых плат)
    • Apple – M1 получил поддержку PCI и pinctrl, приближаясь к готовой системе из коробки.
    • Aspeed – Две дополнительные серверные платы с AST2600 в качестве BMC
    • Broadcom – Несколько контроллеров Cisco Meraki и две новые платы
    • Intel – Новая плата для семейства FPGA Intel Arria SoC
    • Marvell – Сетевой коммутатор на Armada 381 и Плата разработки MOCHAbin 7040
    • Microchip – SoC SAMA5D29, SoC LAN966, добавлены две платы для устаревшего at91sam9g20
    • NXP
      • Автомобильный SoC S32G2
      • 2 электронные книги на i.MX6 и три дополнительные платы разработки
    • STMicroelectronics – Семейство SoC STM32MP13 с эталонной платой
    • Renesas – Новые версии SoC R-Car Gen3
    • Texas Instruments – Три новые платы с SoC K3 .
    • Toshiba – Плата для семейства Visconti
    • Xilinx – Пять машин на ZynqMP

Список изменений для RISC-V в Linux 5.16

Изменения в Linux 5.16, специфичные для архитектуры RISC-V

  • Allwinner D1 – Драйвер сторожевого таймера
  • Обновления Device Tree для SiFive HiFive Unmatched, исправляющие управление регуляторами
  • Пара исправлений для SiFive Hifive Unleashed/Unmatched, корректно подключающих сигнал обнаружения карт MMC.
  • Поддержка пространств имен времени в VDSO с сопутствующим рефакторингом.
  • Поддержка сборки randconfig для rv32.
  •  Улучшения порта XIP, позволяющие работать с крупными ядрами
  •  Оптимизации Device Tree для плат SiFive и Microchip
  • Обновления defconfig, включая активацию Nouveau (поддержка GPU!).

MIPS в Linux 5.16

Незначительные изменения для архитектуры MIPS:

  • Добавлен вывод опций CPU в /proc/cpuinfo
  • Удалена поддержка SoC Netlogic
  • Исправления и оптимизации
    • Исправление сборки для конфигураций с ZSTD
    • Исправление предупреждения о вытеснении
    • Исправление обнаружения FTLB в loongson
    • Исправление выбора уровня таблицы страниц Сайт KernelNewbies
    • Подключение системного вызова futex_waitv
    • Исправления сборки для конфигураций lantiq и bcm63xx
    • Исправление ошибки yamon-dt

Полный список изменений Linux 5.16 доступен в комментариях коммитов , сгенерированных командой git log v5.15..v5.16-rc8 --stat, или в сводке на сайте KernelNewbies .

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

Оригинал статьи вы можете прочитать здесь.

0 0 votes
Article Rating
Подписаться
Уведомление о
guest

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.

0 Комментарий
Oldest
Newest Most Voted
Inline Feedbacks
View all comments