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

Линус Торвальдс только что выпустил Linux 5.8:

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

Несмотря на объёмный период слияния изменений, в кандидатах на выпуск не наблюдалось критичных проблем. Да, на этой неделе возникли раздражающие сложности с зависимостями заголовочных файлов, но это не новое явление, и подобные ошибки не относятся к категории скрытых дефектов, вызывающих серьёзные опасения.

Это подтвердило полезность инструментария для автоматического устранения сложных зависимостей заголовочных файлов, но если бы мечты сбывались… Возможно, когда-нибудь появится SAT-решатель для зависимостей символов, работающий со всеми архитектурами и конфигурациями, а пока это ручная работа, периодически вызывающая сложности.

Впрочем..

Помимо проблем с заголовочными файлами, последняя неделя преимущественно посвящена сетевым изменениям, составляющим около половины правок (особо выделяются драйверы Mellanox и самостоятельные тесты, но присутствуют и другие мелкие доработки). Также заметны исправления RCU.

Вне сетевой части преобладают мелкие исправления драйверов (в основном GPU, RDMA, звука и управления выводами) и незначительные доработки архитектур (arm, x86, powerpc). Все изменения достаточно малы.

Итак, представлена новая версия ядра. Протестируйте её до начала отправки запросов на слияние, обработка которых начнётся завтра.

Linux 5.7 добавил улучшенную реализацию exFAT, учёт теплового давления в планировщике задач и убрал предупреждение о 80-символьной строке для разработчиков, среди прочих изменений.

Linux 5.8 Release

Ключевые особенности выпуска Linux 5.8:

  • Базовая поддержка процессора IBM POWER10
  • Поддержка аппаратного шифрования на лету (Inline Encryption) – встроенное в устройство хранения оборудование позволяет указывать контекст шифрования (ключ, алгоритм, номер/размер блока данных и т.д.) вместе с запросом передачи. Оборудование использует контекст для шифрования/дешифрования данных.
  • Kernel Concurrency Sanitizer (KCSAN) – динамический детектор гонок данных в пространстве ядра. Ключевые приоритеты: отсутствие ложных срабатываний, масштабируемость и простота. KCSAN использует инструментирование доступа к памяти на этапе компиляции, поддерживается в GCC и Clang. Подробности – в документации .

    Обновления Linux 5.8 для архитектуры Arm

  • ARM64 – Shadow Call Stack и Branch Target Identification для повышения безопасности – Универсальная поддержка Shadow Call Stack в Clang для ARM64, использующая теневой стек для защиты потока управления возвратом функций от переполнений основного стека.
  • Allwinner
    • Allwinner A64, A83T, H3, H5 и H6 – Message Box
    • Allwinner H6 – DVFS и IOMMU
    • Новая плата – одноплатный компьютер Olimex A20-OLinuXino-LIME-eMMC
  • Rockchip
    • Добавлена поддержка Rockchip RK3326
    • Медиа – новый драйвер для IP-блока декодера видео Rockchip
    • SPI – поддержка ведомого режима для драйверов Rockchip
    • Новое устройство – игровая консоль Odroid-GO Advance (RK3326)
  • Amlogic
    • Драйвер контроллера PCIe Meson – запрет использования FAST_LINK_MODE для установки соединения
    • Хост MMC – добавление драйвера и документации DT для контроллера SDHC Amlogic Meson
    • Драйвер тактирования
      • Meson8b: обновления и исправления тактовых сигналов HDMI/видео + корректировка полярности сброса
      • Meson gx/g12: исправление бесшумного переключения мультиплексора GPU
    • Обновления DTS – доработки для PHY Ethernet и PHY USB
    • Обновления DTS для ARM64
      • аудио: поддержка систем на кристалле семейства GX
      • аудио: поддержка внутреннего ЦАП
      • использование нового драйвера управления USB для GXL/GXM
    • Новые платы – ТВ-бокс Smartlabs SML-5442TW (S905D), одноплатный компьютер ODROID-C4 , ТВ-бокс Beelink GT-King Pro
  • Samsung
    • Изменения драйверов SoC – исправление и оптимизация драйвера DMC (Dynamic Memory Controller) Exynos5422.
    • Изменения конфигурации по умолчанию (defconfig)
      • Активация драйверов для Bluetooth Exynos3250 Rinato
      • Сборка фреймворка WiFi mac80211 как модуля для синхронной загрузки с данными регулирования.
    • Обновления DTS
      • Активация WiFi и Bluetooth на нескольких платах,
      • Добавление функций для мобильных телефонов семейства Aries на S5Pv210 (например, Samsung Galaxy S): конфигурация приостановки, поддержка аудио, мультиплексор USB, сенсорные клавиши, панель, адаптеры i2c-gpio, FM-радио, АЦП,
      • Многочисленные мелкие исправления (например, полярность GPIO, прерывания).
    • Новое устройство – телефон Samsung Galaxy S2 «GT-I9100» (Exynos 4210)
  • Qualcomm
    • Обновления драйверов для Linux 5.8:
      • Драйвер тактирования – поддержка универсального контроллера тактирования Qualcomm MSM8939; добавление тактовых сигналов GPU, NPU и UFS для драйвера Qualcomm SM8150
      • Управление выводами (Pinctrl) – поддержка Qualcomm SM8250
      • Комплексная оптимизация, исправление ошибок и документации для драйвера RPMH
    • Обновления DTS:
      • Добавление узла прошивки SCM для IPQ806x
      • Исправление высокоточного таймера для IPQ4019
      • Добавление регуляторов, поддержки eMMC и USB для Samsung Galaxy S5.
    • Обновления DTS для ARM64:
      • SDM845 – определение сетевого ускорителя IPA и шины управления камерой CCI, добавление обязательного сброса UFS, WiFi для Lenovo Yoga C630, определение имён выводов GPIO и узлов камер OV8856/OC7251 для DB845c.
      • SC7180 – добавление поддержки GPU, определение удалённого процессора модема, сетевого ускорителя IPA, поддержки Coresight и ETM, состояний низкого энергопотребления cpuidle, обновление совместимости процессоров.
      • SM8250 – Добавлены регуляторы от PM8150, PM8150L и PM8009, введены напряжения угловых точек. Определены узлы для PHY и контроллера UFS, исправлена опечатка в узле PDC для обеспечения функциональности SPMI.
      • MSM8916 – Определены I2C1 и I2C5, добавлен узел для шины управления камерой CCI. Coresight по умолчанию отключен для соответствия конфигурациям продуктов. Для Samsung A3U добавлена поддержка дисплея, для Samsung A5U – поддержка сенсорного экрана.
      • MSM8996 – Описана цепь питания GPU, добавлена шина управления камерой CCI. Для DB820c определены регуляторы вторичного PMIC.
      • QCS404 – Определены и подключены PHY и контроллеры USB для оценочной платы.
      • Поддержка платформы SDM630/SDM660
    • Обновления конфигурации ARM64 defconfig
      • Драйверы тактовых сигналов GCC для SM8250 & SC7180
      • Драйвер управления выводами TLMM для SC7180
      • Драйверы IPA и RMNET
      • Драйверы CCI, подсистемы камеры и тактовых сигналов камеры
      • Удалена устаревшая запись GLINK_SSR.
    • Новые устройства – Смартфон Xiaomi Redmi Note 7 (Qualcomm SDM630)
  • MediaTek
    • Поддержка тактовых сигналов Mediatek MT6765.
    • Добавлена поддержка PMIC MediaTek MT6358 и Mediatek MT6360.
    • Добавлена поддержка MAC Ethernet MediaTek – Поддержка контроллера STAR Ethernet, используемого в SoC MediaTek семейства MT8*.
    • Добавлена поддержка RTC MediaTek MT6358.
    • SoC MediaTek MT7623 – Добавлены привязки устройств для GPU Mali-450.
    • Новые устройства – Ноутбуки Chromebook Elm/Hana (MT8173).
  • Другие новые аппаратные платформы и SoC на базе Arm:
    • Aspeed – BMC на базе ast2500 в Facebook x86 «Yosemite V2» и YADRO OpenPower P9 «Nicole»
    • Marvell – маршрутизатор Check Point L-50 на базе Kirkwood
    • Microchip – эталонная плата SAMA5D2 «Industrial Connectivity Platform»
    • NXP – комплект разработки Beacon i.MX8m-Mini SoM на базе NXP i.MX8m
    • Realtek – SoC RTD1195, RTD1395 и RTD1619 для NAS и Android TV-приставок, а также эталонные платформы «Horseradish», «Lion Skin» и «Mjolnir», а также TV-приставки Mele X1000 и Xnano X5 и Banana Pi BPi-M4 одноплатный компьютер.
    • Renesas – 32-битный промышленный SoC RZ/G1H (r8a7742) и плата/модуль SoM iWave Systems iW-RainboW-G21D Qseven-RZG1H
    • Socionext – одноплатный компьютер Akebi96 на базе Uniphier
    •   STMicro – плата разработки Linux Automation MC-1 на базе Octavo OSDMP15x; одноплатный компьютер Stinger96 и IoT Box на базе STM32MP1
    • Texas Instruments — оценочная плата K2G на базе TI Keystone; комплект разработки Beaglebone-AI на базе TI AM5729

Изменения в MIPS для Linux 5.8

Для процессоров MIPS по-прежнему наблюдается некоторая активность:

  • Добавлена поддержка ядер MIPSr5 и P5600
  • Преобразован драйвер PCI Loongson в драйвер хоста PCI с использованием универсального PCI фреймворка.
  • Добавлена эмуляция команды CPUCFG для процессоров Loogonson64
  • Удалено: LASAT, PMC MSP71xx и NEC MARKEINS/EMMA
  • Очистка ioremap
  • Исправление гонки между двумя потоками при обращении к одной странице,
  • различные исправления и улучшения

Обновления Linux 5.8 для RISC-V

  • Остальная часть кода, необходимая для поддержки Kendryte K210:
    • Поддержка встраивания деревьев устройств в ядро, поскольку K210 не имеет bootloader, предоставляющего такое дерево.
    • Обновление дерева устройств K210 и соответствующего defconfig
    • Поддержка пропуска инициализации PMP в системах, генерирующих исключение при доступе к PMP, вместо интерпретации таких обращений как WARL.
  • Поддержка KGDB
  • Улучшения механизма патчинга кода
  • Оптимизации драйвера кэша L2 SiFive

Полный журнал изменений (только сообщения коммитов) сгенерирован командой `git log v5.7..v5.8-rc7 --stat`  здесь . Вы также можете ознакомиться со списком изменений Linux 5.8 на KernelNewbies сайт .

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

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

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

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

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