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

Linux 6.2 только что выпущен, и Линус Торвальдс, как обычно, сделал анонс на LKML :

Итак, мы здесь, точно по (расширенному) графику, с выпуском 6.2.

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

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

И это, очевидно, означает, что окно слияния для 6.3 откроется завтра, и у меня уже есть более 30 запросов на включение, что очень приятно. Мне нравится, как люди начали серьезно относиться к идее «готово к окну слияния».

Но в то же время, пожалуйста, протестируйте 6.2. Возможно, это не такой значительный LTS-релиз, каким оказался 6.1, но и обычные, рядовые ядра тоже заслуживают тестирования.

Линус

Предыдущий Linux 6.1 был выпущен как LTS-ядро (Long Term Support) с начальной поддержкой языка программирования Rust, KMSAN (санитайзер памяти ядра), реализацией Multi-gen LRU (MG-LRU) для улучшенного управления файлами/разделами подкачки и множеством других изменений.

Linux 6.2 release

Основные изменения в Linux 6.2

Некоторые значимые изменения в Linux 6.2 включают:

  • Более быстрое устранение уязвимости Retbleed спекулятивного выполнения на процессорах x86-64 и ARM, а также FineIBT – Методы, используемые для устранения уязвимости Retbleed, оказывали значительное влияние на производительность. Linux 6.2 реализует более легковесное программное исправление для ядер на базе Skylake, где включение IBRS было избыточным и вызывало значительное падение производительности. Этот новый метод можно включить с помощью параметра загрузки retbleed=stuff. Новый выпуск также добавляет функцию устранения FineIBT, основанную на программной реализации kCFI, и использует аппаратную поддержку IBT там, где она есть, для аннотирования и отслеживания косвенных ветвлений с использованием хеша для их проверки. LWN предоставляет больше деталей о первом.
  • Инструмент Runtime Verification (RV) – Система Runtime Verification, объединенная в Linux 6.0 , представляет собой легковесный метод, который дополняет классические методы исчерпывающей проверки (такие как проверка моделей и доказательство теорем) более практичным подходом для сложных систем. Linux 6.2 включает инструмент RV для проверки во время выполнения, который служит интерфейсом для мониторов RV в ядре и «домом» для мониторов, управляемых из пользовательского пространства.
  • exFAT стал быстрее в Linux 6.2 при создании файлов и каталогов.
  • Дополнительная экономия энергии благодаря улучшенной блокировке RCU – Метод блокировки RCU реализует пакетную обработку обратных вызовов RCU по таймеру (так называемые «ленивые» обратные вызовы), что экономит около 5-10% энергопотребления в устройствах Android и ChromeOS из-за запросов RCU, происходящих при слабой нагрузке или простое системы (по умолчанию отключено, можно включить в KConfig).

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

Теперь рассмотрим изменения, касающиеся архитектуры Arm:

  • Allwinner
    • Allwinner A100 – Драйвер MIPI DSI (DHPY)
    • Allwinner H616     – Драйвер USB PHY
    • Allwinner A31 – Код драйвера камеры теперь разделен на мост и отдельный драйвер процессора
    • Allwinner F1C100S – Добавлены LRADC (KEYADC), CIR (инфракрасный приемник), I2C, PWM
    • Драйвер тактовых сигналов
      • Исправлен заголовочный guard для тактовых сигналов V3S
      • Добавлен тактовый сигнал модуля IR для F1C100S
    • Драйвер IOMMU для Sun50i – Удален IOMMU_DOMAIN_IDENTITY, так как он не работал вечно, а также другие исправления
    • Новые платы и устройства – В этот раз их нет
  • Rockchip
    • ASoC – Поддержка Rockchip RK3588
    • IOMMU – Исправление бита разрешений таблицы страниц
    • Драйвер тактовых сигналов – Поддержка блока тактовых сигналов и сброса Rockchip rk3588
    • Драйвер контроллера PCIe Rockchip DesignWare – Базовая схема DT основана на общей схеме Synopsys.
    • Таймеры – Добавлены привязки DT для таймера Rockchip rk3128
    • Поддержка криптографии для rk3399 и rk3328
    • Второй контроллер I2S для rk3568
    • Свойства кэша соответствуют привязкам для rk3308 и rk3328
    • Обновления поддержки устройств:
      • SOQuartz: PCIe2, видеовыход, GPU, звук HDMI
      • Rock 3A: регулятор eth, вход тактового сигнала eth, Wi-Fi+BT, I2S, PCIe3
      • Незначительные расширения для Rock960 (питание HDMI), rk3566-roc-pc (PCIe2), Rock 4C+ (поддержка термодатчиков), Pinephone Pro (Wi-Fi+BT)
    • Новые устройства и платы
  • Amlogic
    • Amlogic Meson G12 – Поддержка DDR PMU
    • Изменения в ARM64 DT для Linux 6.2:
      • meson-gxl: добавлены узлы pinctrl для SPI CLK
      • meson-gxbb: добавлены узлы pinctrl для SPI CLK
      • Активация активного охлаждения с помощью gpio-fan на Odroid N2/N2+
      • Удаление clock-frequency из rtc
      • Обновление свойств кэша для amlogic
    • Новое устройство – ODROID Go Ultra портативная игровая консоль (S922X)
  • Samsung
    • IOMMU – Исправление последовательности инициализации драйвера (Exynos)
    • Изменения в DTS ARM64 для Linux 6.2 – Корректировка макросов и значений drive strength для выводов в Tesla FSD SoC
  • Qualcomm
    • Новые SoC:
      • MSM8996 Pro (Snapdragon 821)
      • SM6115 (Snapdragon 662)
      • SM4250 (Snapdragon 460)
      • SM6375 (Snapdragon 695)
      • SDM670 (Snapdragon 670)
      • MSM8976 (Snapdragon 652)
      • MSM8956 (Snapdragon 650)
      • SA8540P автомобильный SoC
    • Драйвер контроллера PCIe Qualcomm – Добавлена базовая поддержка межсоединений для SC8280XP/SA8540P.
    • Драйвер PHY
      • Поддержка PCIe1 PHY Qualcomm SM8450 в режиме EP
      • Поддержка PCIe PHY Qualcomm SC8280XP (включая режим x4)
      • Исправление DT bindings для USB4-USB3-DP PHY Qualcomm SC8280XP
    • DMA engine – Поддержка контроллера GPI для Qualcomm SDM670, SM6115 и SM6375
    • Драйвер тактирования
      • Глобальный контроллер тактирования для Qualcomm SM8550
      • Контроллер тактирования дисплея для Qualcomm SC8280XP
      • Контроллер тактирования RPMh для Qualcomm QDU1000 и QRU1000 SoC
    • Регулятор – Поддержка Qualcomm PM8550
    • Socinfo – Добавлена информация о MSM8956, MSM8976, SM6115, SM4250, SM8150, SA8155 и SM8550.
    • Qualcomm 802.11ax WiFi (ath11k) – Поддержка настройки времени пребывания на канале во время сканирования.
    • Обновления DTS для ARM64 в Linux 6.2
      • Добавлено описание Vision Mezzanine для платы RB5 и Navigation Mezzanine для SDM845 RB3.
      • SC8280XP: добавлена поддержка масштабирования L3 и DDR, что привело к значительному повышению производительности. PCIe и UFS помечены как DMA coherent, что устраняет проблемы с повреждением данных. Исправлены опорные тактовые сигналы для UFS phy и устройства, чтобы решить проблемы, возникающие с некоторыми загрузчиками, когда состояния загрузчика недостаточно.
      • Добавлено описание RTC для платы SA8295P ADP.
      • SM6115: добавлены блоки GPI, PRNG, tsens, WCN, cpufreq, I2C/SPI и дисплея.
      • SM6375: описаны блоки QUP, что позволило добавить сенсорный экран и remoteproc для ADSP и CDSP.
      • SM8250: описаны компоненты Coresight
      • SM8450: описаны блоки звука и Soundwire, активированы на HDK. Добавлен тактовый сигнал питания CPU для соответствия DT binding и opp-framework.
      • Многочисленные обновления для соответствия DeviceTree bindings на большинстве платформ, исправлены некорректные комментарии в дереве.
      • Apps RSC добавлен в power-domain cluster-idle для SM8150, SM8250, SM8350 и SM8450, чтобы гарантировать сброс голосов сна и пробуждения при отключении последнего ядра.
      • Патчи прошивки remoteproc приведены к согласованной структуре, используемой в linux-firmware, для Inforce 6560, Lenovo Miix 630, различных устройств Sony Xperia и Samsung Galaxy Book2 (хотя они пока недоступны в linux-firmware).
      • IPQ8074: добавлены тактовые сигналы, введены термозоны и указан источник vqmmc для платы HK01.
      • Alcatel OneTouch Idol 3 получил узлы LED, а Samsung Galaxy A3U – поддержку вибратора.
      • Новая таблица частот CPU для MSM8996Pro, чтобы отдельно описать его от MSM8996. Таблица GPU opp-table также расширена.
      • SC7180: USB помечен как источник пробуждения, добавлены required-opps для USB, чтобы гарантировать подачу напряжения на ядро. Исправлено описание датчика отпечатков пальцев в Trogdor.
      • SC7280: добавлена поддержка Wake-on-WLAN, определены параметры PHY для SNPS USB PHY на SC7280.
      • Скорректирована карта памяти для Google Herobrine, чтобы вернуть неиспользуемую память в SKU с WiFi. Добавлен LTE SKU для платы Evoker, а также сенсорный экран. Поддержка NVME отключена на платах Villager, так как не используется.
      • Активированы NVMe, SDX55 (5G) и WiFi на Lenovo Thinkpad X13s и Compute Reference Device. Добавлены АЦП и термозоны. Lenovo Thinkpad X13s получил поддержку датчика крышки.
      • Fairphone FP3 получил поддержку сенсорного экрана.
      • Fairphone FP4 получил поддержку SD-карты.
      • Активирован round-robin ADC на DB845c, устройствах OnePlus и Pocophone F1.
      • Добавлен контроллер DisplayPort на SDM845.
      • SM6350 получил поддержку SDHCI, а на Sony Xperia 10 III активированы SD-карта, сенсорный экран и GPI DMA.
      • Исправлены диапазоны регистров UFS PHY для SM8150, SM8250, SM8350 и SM8450.
      • Sony Xperia 1 II получил поддержку NFC, а Sony Xperia 5 III – определены регуляторы PMIC и исправлено описание USB для активации USB3.
      • Добавлено описание контроллера SDHCI для SM8450, активирована поддержка microSD для HDK и QRD устройств.
      • SM8450 также получил интерфейс CCI для камеры и контроллер тактирования дисплея.
    • Обновления конфигурации Arm
      • Активация оставшихся драйверов pinctrl TLMM Qualcomm в qcom_defconfig
    • Обновления конфигурации Arm64
      • Активация Global Clock Controller (GCC) и pinctrl TLMM для SM6115 и SM4250.
      • Активация дополнительных драйверов pinctrl TLMM Qualcomm и криптографических драйверов Qualcomm.
      • Изменение драйверов межсоединений SC7180 и SM8450 на встроенные, чтобы гарантировать регистрацию консоли до её необходимости в init.
    • Новые устройства и платы
      • Телефоны Sony: Xperia 10 IV, 5 IV, X и X compact
      • Телефоны OnePlus: One, 3, 3T и Nord N100
      • Xiaomi Poco F1 и Mi6
      • Huawei Watch
      • Google Pixel 3a
      • Новые варианты материнских плат Chromebook Herobrine и Trogdor
      • Платформа разработки Qdrive-3 на базе автомобильного SoC SA8540P
  • MediaTek
    • IOMMU – Улучшена защита от некорректных данных DTS; мелкие исправления и улучшения
    • Драйвер контроллера PCIe Gen3 MediaTek – Добавлена поддержка MT7986 и MT8195
    • ASoC – Поддержка систем MediaTek с несколькими DMIC
    • DRM
      • Исправления для DPI и HDMI
      • Перемещение коннектора панели в начало
      • Добавлена поддержка DPI для MT8188
      • Добавлена поддержка AFBC для MT8195
    • Сетевой стек
      • MediaTek MT7986: добавлена поддержка RX Wireless Ethernet Dispatch
      • MediaTek (mtk_eth_soc) – улучшена реализация PCS, добавлена поддержка DSA untag, активирована поддержка flow offload
      • Устройства MediaTek Wi-Fi 7 (802.11be)
      • Wi-Fi MediaTek (mt76)
        • Активирована поддержка Wireless Ethernet Dispatch (WED) offload
        • Добавлена поддержка сигнала подтверждения (ack)
        • Активирована поддержка coredump
        • Поддержка remain_on_channel
    • Регулятор – Поддержка MediaTek MT6357
    • Термоконтроль – Добавлены DT bindings и совместимость для SoC MediaTek MT7981 и MT7983
    • GPIO – Поддержка аппаратных особенностей (HW quirks) для MediaTek MT2701
    • Тактовые сигналы – Контроллер переключения частот на MediaTek MT8186
    • Новое устройство – Телефон Sony Xperia M5 на базе MediaTek Helio X10.
  • Другие новые аппаратные платформы и SoC на Arm
    • Apple – Добавлена начальная поддержка чипов Apple T6000 (M1 Pro), T6001 (M1 Max) и T6002 (M1 Ultra).
    • Aspeed – 2 пользователя BMC Aspeed
    • Broadcom – 2 Wi-Fi роутера
    • Marvell – NAS Zyxel NSA310S (88F6702A)
    • NXP:
      • i.MX 6: Электронная книга Kobo Aura2
      • i.MX 8: 2 платы разработчика
    • Renesas – Добавлена поддержка RZ/G2UL (r9a07g043), реорганизована для совместного использования большей части описания DTS между Arm/RISC-V, добавлена поддержка платы RZ/Five SMARC EVK.
    • STMicro – Тестовая плата STM32MP1 от DHCOR
    • Uniphier – 2 платы разработчика Uniphier Pro5
    • Texas Instruments – На базе K3 BeagleBone AI-64 плата

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

  • Allwinner D1 – Драйвер MIPI DSI, поддержка ASoC
  • Renesas – Поддержка платы RZ/Five SMARC EVK .
  • StarFive – Код JH7100 реорганизован для поддержки платы VisionFive V1 .
  • KVM:
    • Разрешена выгрузка модуля KVM
    • Разрешено задание mvendorid, marchid и mimpid из пользовательского пространства KVM
    • Несколько исправлений и улучшений
  • Поддержка T-Head PMU через подсистему perf
  • Поддержка ftrace для rv32
  • Поддержка устройств энергонезависимой памяти
  • Различные исправления и улучшения
  • Обновления Device Tree:
    • dt-bindings:
      • Новые совместимые строки для поддержки StarFive VisionFive и ядер T-Head CPU
      • Исправление binding pwm для PolarFire SoC, объединённое по предложению разработчиков PWM
      • Microchip:
        • Несрочное исправление несоответствия адреса узла и регистра, чтобы избежать предупреждений проверок
        • Добавлены LED с управлением через GPIO для Icicle
        • Поддержка тактовых сигналов «CCC» в FPGA
        • Исправление pwm-cells для Icicle
        • Удаление неиспользуемых тактовых сигналов PCI
      • StarFive – Добавление DT для VisionFive

Отметим, что некоторые обновления RISC-V были найдены в обновлениях Arm SoC от Arnd Bergmann, возможно, из-за использования общих драйверов для RISC-V и Arm SoC некоторыми компаниями, а также из-за того, что Arnd поддерживает обновления Device Tree и для RISC-V.

Список изменений MIPS

Для архитектуры MIPS также объединены несколько обновлений:

  • Ingenic – Поддержка dmaengine для Ingenic JZ4755
  • Очистка DT
  • Исправление раннего использования kzalloc на платформе mt7621
  • Очистка и исправления

Также доступен более полный список изменений Linux 6.2 с сообщениями коммитов для дополнительных деталей. Он был сгенерирован командой git log v6.1..v6.2-rc8 --stat. Альтернативно, список изменений можно прочитать на сайте KernelNewbies .

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

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

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

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

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