Linus Torvalds vient d’annoncer la sortie de Linux 6.7, faisant suite à Linux 6.6 LTS il y a un peu plus de deux mois :
Nous avons donc eu un peu plus de choses la semaine dernière par rapport à la semaine de vacances précédente, mais certainement pas assez pour me faire penser que nous voudrions retarder cela davantage.
Résultat final : 6,7 est (en nombre de commits : plus de 17 000 commits sans fusion, avec plus de 1 000 fusions) l’une des plus grandes versions de noyau que nous ayons jamais eues, mais la semaine supplémentaire de rc8 était uniquement due au timing avec les vacances, pas à propos de toute difficulté avec la version plus grande.
Les principaux changements de la semaine dernière étaient quelques mises à jour de DRM (principalement des correctifs pour l’activation de nouveaux matériels dans cette version – à la fois amd et nouveau), quelques correctifs supplémentaires pour bcachefs (et bcachefs est évidemment nouveau dans la version 6.7 et l’une des raisons du grand nombre de commits), puis quelques mises à jour aléatoires des pilotes. Et une poignée de bruit mineur ailleurs.
Le shortlog est ajouté – il n’y a vraiment pas grand-chose là-bas, vous pouvez le parcourir rapidement si vous vous souciez des détails – et cela signifie évidemment que demain la fenêtre de fusion pour 6.8 s’ouvrira. J’ai déjà plus de deux douzaines de demandes de tirage anticipées en attente – merci.
Mais s’il vous plaît, arrêtez-vous avant que le plaisir de la prochaine série de développement ne commence. D’accord?
Linus
La version précédente de Linux 6.6 nous apportait la prise en charge matérielle de la pile fantôme d’Intel pour empêcher les exploits, le planificateur de tâches EEVDF (« Early Eligible Virtual Deadline First ») pour une latence plus faible et des E/S directes asynchrones plus rapides utilisant io_uring, parmi de nombreux autres changements.

Changements notables dans Linux 6.7
- Le système de fichiers bcachefs a été fusionné avec Linux 6.7 avec près de 2 800 commits, bien qu’il soit actuellement marqué comme « expérimental ». Le site Web du système de fichiers décrit bcachefs comme un « système de fichiers COW pour Linux qui ne consommera pas vos données » ou « un nouveau système de fichiers avancé pour Linux, mettant l’accent sur la fiabilité et la robustesse et l’ensemble complet de fonctionnalités que l’on peut attendre d’un système de fichiers moderne. ».
- Amélioration des performances du planificateur de paquets de mise en file d’attente équitable pour une mise en réseau plus rapide avec le commit affirmant « Cette série apporte une augmentation du débit de 5 % dans la charge de travail intensive tcp_rr et une augmentation de 13 % pour les paquets UDP (non rythmés). »
- De nombreuses nouvelles fonctionnalités et améliorations de l’outil de profil de performances sous Linux 6.7, toutes répertoriées dans le message de fusion.
- L’architecture LoongArch prend désormais en charge la virtualisation avec KVM. Voir la documentation commit pour quelques détails supplémentaires.
- Suppression du support de l’architecture Intel Itanium (ia64), même si la porte est ouverte à un retour…
Armer les changements dans Linux 6.7
De nombreuses mises à jour et modifications ont été apportées à l’architecture Arm dans Linux 6.7 :
- Activez ou désactivez l’émulation 32 bits sur les noyaux x86-64 avec le paramètre de ligne de commande ia32_emulation= pour une sécurité améliorée lorsque l’émulation 32 bits n’est pas nécessaire. L’option de configuration IA32_EMULATION_DEFAULT_DISABLED contrôle si l’émulation 32 bits est activée par défaut
- Gagnant
- Pinctrl – Banques GPIO supplémentaires pour le Sunxi H616
- Arborescence des appareils
- Ajout de nœuds V3s pour PWM pinctrl, EHCI et OHCI
- Ajout d’une interconnexion au nœud de codec vidéo R40
- Nouveaux appareils et cartes
- Puce de roche
- Gestion de l’alimentation – Ajoutez la prise en charge des performances au pilote devfreq-event Rockchip DFI (DDR Monitor Module)
- DRM – Ajout de la prise en charge de l’affichage des formats 4:2:0 et 4:2:2 10 bits produits par le décodeur vidéo Rockchip sur les RK322X, RK3288, RK3328 et RK3399. Ajoutez également la prise en charge du format 4:4:4 10 bits.
- ASoC – Convertissez le RK3288 HDMI en descripteurs GPIO, convertissez les pilotes Rockchip ASoC en descripteurs GPIO
- USB – Sur Rockchip RK3588, l’un des cœurs DWC3 est intégré bizarrement et nécessite l’activation de deux horloges supplémentaires. Sans ces horloges supplémentaires, le branchement à chaud des périphériques USB est impossible.
- Affichage – Documentez le MIPI DSI et le VOP pour Rockchip RV1126, qui sont tous deux différents des autres variantes de SoC
- Arborescence des appareils Arm64
- Ajouter des boutons ADC à rk3588-evb1
- Ajouter la prise en charge de la clé électronique NanoPC-T6 PCIe
- Arborescence des appareils Arm32
- Passez à Operating-Points-v2 pour le processeur du RK3128
- Ajouter des réinitialisations du processeur pour le RK3128
- Ajouter des nœuds pwm2 et pwm11 pour Rockchip RV1126
- Nouvel appareil – Console de jeu portable Powkiddy RGB30 (Rockchip RK3566)
- Amlogic
- Watchdog – Ajout de la prise en charge des SoC Amlogic C3 et S4
- Pinctrl – Ajouter un pilote de contrôle des broches Amlogic T7
- Horloge – Ajout de la prise en charge du contrôleur d’horloge principal Amlogic s4
- Conducteurs
- Corriger la gestion de la récupération de l’API meson_sm_*
- Utilisez device_get_match_data() dans méson SM
- Modifications d’ARM64 DT pour Linux 6.7
- Ajouter des nœuds DT audio pour p200/p201/u200
- Ajoutez un tas de périphériques pour Amlogic-T7 (chien de garde, domaine d’alimentation, pinctrl)
- Ajoutez un tas de périphériques pour Amlogic-A1 (clk, usb, efuse, spi, uarts, emmc, ADC, rng, i2c)
- Ajouter un nœud NAND sur Amlogic AXG
- Encore un tas de corrections DT pour la vérification des liaisons DT
- Defconfig ajoute divers pilotes pour les cartes basées sur Amlogic telles que Khadas VIM3 et Hardkernel ODROID-N2 :
- KEYBOARD_GPIO_POLLED=m utilisé pour prendre en charge les boutons sur les cartes pré-G12A
KHADAS_MCU_FAN_THERMAL=m & MFD_KHADAS_MCU=m pour contrôler le FAN sur le MCU sur les cartes Khadas VIM - MEDIA_CEC_SUPPORT=y & CEC_MESON_G12A_AO=m pour activer le bus CEC
- RTC_DRV_PCF8563=m pour activer la prise en charge de RTC sur la plupart des cartes SBC
- VIDEO_MESON_VDEC=m pour activer le décodeur vidéo matériel
- MESON_DDR_PMU=m pour activer le pilote de performance DDR PMU sur les SoC G12A et SM1
- KEYBOARD_GPIO_POLLED=m utilisé pour prendre en charge les boutons sur les cartes pré-G12A
- Nouveaux tableaux
- Samsung
- Pinctrl – Quelques nettoyages, améliorations (utiliser l’annotation __counted_by) et enfin passer à l’allocation dynamique de l’espace numérique GPIO.
- Modifications de DTS ARM pour Linux 6.7
- Basculez toutes les cartes son vers la propriété de routage audio générique, prise en charge depuis la version précédente pour les pilotes Samsung. L’ancienne propriété Samsung de routage audio est obsolète.
- Corrigez le thermique Exynos4210 à l’aide de l’interrogation. Apparemment, les interruptions dans l’unité de surveillance thermique sont interrompues.
- Modifications pour les cartes Midas (Exynos4412, par exemple Samsung Galaxy S3)
- Corrigez la clé matérielle du milieu pour émettre KEY_OK au lieu de KEY_MENU, car il existe déjà une touche tactile distincte fournissant KEY_MENU et l’étiquette et le nom du nœud suggèrent que cela devrait être KEY_OK.
- Utilisez des définitions pour d’autres constantes d’entrée clés.
- Modifications du Samsung DTS ARM64
- Exynos850 : ajoutez la prise en charge de l’USB 2.0 (hôte et périphérique) et activez-le sur la carte E850-96, ajoutez une région de mémoire réservée Ramoops à la carte E850-96 à des fins de débogage.
- Exynos5433 : Basculez la carte son vers la propriété de routage audio générique, prise en charge depuis la version précédente pour les pilotes Samsung. L’ancienne propriété Samsung de routage audio est obsolète
- Quelques nettoyages.
- Modifications de la configuration de la configuration
- Activez plusieurs pilotes pour les cartes avec les SoC Samsung Exynos ARM dans exynos_defconfig et multi_v7_defconfig : affichage PHY, AHCI DWC, touche tactile TM2 (utilisée sur les cartes basées sur ARM et ARM64 Exynos), capteurs de caméra Samsung et capteur de lumière Intersil 29018.
- Activez également IIO dans s5pv210_defconfig utilisé par le pilote de jauge de carburant MAX17040.
- Nouveaux appareils – N/A
- Qualcomm
- IOMMU
- Mise à jour de la liaison de l’arborescence des périphériques : ajoutez qcom, sm7150-smmu-v2 pour Adreno sur le SoC SM7150
- SMMUv2 – Prise en charge des SoC Qualcomm SDM670 (MDSS) et SM7150
- Gestion de l’alimentation – Ajoutez la prise en charge de plusieurs versions de Qualcomm SoC au pilote Qualcomm cpufreq
- Remoteproc – La prise en charge des DSP audio, de calcul et de modem sur Qualcomm SM6375, ainsi que le DSP audio dans SC7180 sont introduites. L’horloge NoC périphérique est supprimée du DSP du modem MSM8996, car elle est gérée par le fournisseur d’interconnexion.
- Pinctrl
- Cartes de broches MPM ajoutées pour Qualcomm MSM8996, SM6115, SM6125 et SDM660
- Prise en charge de la fonction MLSP I2C6 dans Qualcomm MSM8226
- PHY
- Nouvelle prise en charge de Qualcomm sa8775p qmp-pcie, IPQ5018 et SC7280 qmp-ufs
- Mises à jour Qualcomm qmp usb et combo phy pour la disposition des registres v6
- Mises à jour Qualcomm eusb2-repeater pour les remplacements de réglage et les champs regmap
- ASoC – Ajout de pilotes ASoC pour les plates-formes Qualcomm SM6115 et SC7180
- Pilote du contrôleur PCIe :
- Utilisez PCIE_SPEED2MBS_ENC() pour simplifier l’encodage de la vitesse de liaison
- Ajoutez un rappel .write_dbi2() pour que les écritures du registre DBI2, par exemple pour définir la taille de la BAR, fonctionnent correctement
- Activez ASPM pour les plates-formes qui utilisent les opérations 1.9.0, car le cœur PCI n’active pas les états ASPM qui n’ont pas été activés par le micrologiciel.
- Pilote SoC – Prise en charge de l’interface du micrologiciel Qualcomm Secure Execution Environment pour accéder aux variables EFI sur certains appareils, ainsi que de nouvelles fonctionnalités pour plusieurs plates-formes et micrologiciels.
Conducteurs - Horloge
- Prise en charge initiale du contrôleur d’horloge global Qualcomm SM4450 et des contrôleurs d’horloge SM4450 RPMh
- Ajouter un contrôleur d’horloge de caméra sur Qualcomm SM8550
- Wi-Fi Qualcomm (ath12k)
- WCN7850 :
- activer les canaux 320 MHz dans la bande 6 GHz
- prise en charge matérielle de rfkill
- activez IEEE80211_HW_SINGLE_SCAN_ON_ALL_BANDS pour accélérer l’analyse
- lire le nom de la variante des données de la carte à partir du SMBIOS
- QCN9274 : prise en charge du maillage
- WCN7850 :
- Nouveau SoC – Qualcomm Snapdragon 720G (SM7125) est un proche parent du Snapdragon 7c
- Mises à jour ARM32 DTS
- Les statistiques principales RPM sont introduites pour MSM8226 et MSM8974
- Le PCIe PHY du SDX55 est migré vers la nouvelle liaison
- Le capteur Hall du Samsung Galaxy Tab 4 est inversé.
- Un certain nombre de correctifs signalés par la validation DeviceTree sont corrigés.
- Mises à jour Arm64 DTS pour Linux 6.7
- Les différentes liaisons PHY QMP ayant été refactorisées, les SC7180, SC7280, SDM845, SM8150 et SM8250 sont passés à la nouvelle liaison PHY combo USB/DP. IPQ6018, IPQ8074 MSM8998, SC7280, SC8180X, SDM845, SM8150, SM8250 et SM8450 sont migrés vers la nouvelle liaison PCIe PHY, et SC8180X sont migrés vers la nouvelle liaison phy UFS.
- La situation de l’alimentation électrique UFS est clarifiée et une gamme de cartes des modèles MSM8996, MSM8998, SM4250, SM6115, SM6125, SM8350, SM8450 et SM8550 reçoit des corrections à cet effet.
- IPQ5018 – La prise en charge du chien de garde est introduite et le pilote SCM a activé SDI (image de débogage) – afin qu’il puisse être désactivé.
- IPQ5332 – USB est activé.
- L’identifiant hwspinlock est corrigé sur IPQ5332, IPQ6018, IPQ8074 et IPQ9574.
- Les plages de mémoire réservées pour les procédures distantes sur les cartes MSM8916 ont été refactorisées afin de réduire le nombre de définitions passe-partout dupliquées. Un certain nombre de nœuds sont désactivés par défaut, afin de faciliter la création de nouveaux tableaux.
- Les Samsung Galaxy Tab A 8.0 et Samsung Galaxy Tab A 9.7 bénéficient de la prise en charge de l’affichage, et ces dernières touches capacitives. Le Samsung Galaxy J5 bénéficie du support de l’accéléromètre.
- Le Dragonboard 410c gagne la définition manquante du régulateur ADC7533 et une superposition forçant la carte à fonctionner en mode hôte, à des fins d’automatisation.
- MSM8976 – Les bits IPC sortants pour le modem et wcss sont corrigés et les régions de mémoire réservée sont mises à jour.
- MSM8992 et MSM8994 – Les régions de mémoire réservée incorrectes sont corrigées
- La carte QRB2210 RB1 obtient le débogage UART déplacé par mise à jour matérielle. les plages de tension du régulateur sont corrigées, les procédures à distance sont activées, l’USB SuperSpeed PHY est activé et des LED GPIO sont introduites pour Bluetooth, WiFi et une LED utilisateur.
- Plateforme SA8775P Ride – Les interruptions sont décrites pour les PHY SGMII et le moteur de chiffrement en ligne est introduit pour UFS.
- SC7180 – Le processus à distance DSP audio est introduit. Des SKU supplémentaires des cartes Lazor sont ajoutés. La partie codec audio RT5682 est réorganisée pour être
plus facile à entretenir. Sur les appareils Trogdor, l’écran tactile et les panneaux d’affichage sont liés pour améliorer le comportement du cycle d’alimentation entre les deux. - SC7280 – Les états du cpuidle sont réécrits pour prendre en charge le mode PCSI lancé par le système d’exploitation. Des interruptions LMH sont ajoutées pour recevoir un retour d’information en cas de limitation. La description du débogueur USB intégré (EUD) et le nœud de connecteur USB-C factice sont supprimés, car ils ne sont pas correctement décrits. L’entrée d’horloge tubulaire USB3 du contrôleur d’horloge global est correctement décrite.
- Le modem distant est introduit sur le SDM630 et le mappage PDC du SDM670 est corrigé.
- SDM845 – La prise en charge MTP PCIe est introduite. Les boutons de réduction du volume et de réinitialisation sont définis. Les noms du micrologiciel Remoteproc et la configuration WiFI sont corrigés. Sur Sony Xperia XZ2, XZ2 Compact et XZ3, les noms des lignes GPIO sont fournis pour les TLMM et les PMIC. Les régulateurs de caméra sont également ajoutés.
- SM6125 – Des blocs matériels d’affichage sont ajoutés et activés sur Sony Xperia 10 II.
- SM8150 – L’horloge de référence est câblée au PCIe PHY
- Sur le SM8250/QRB5165 et la carte RB5, le contrôleur DisplayPort et le TCPM sont introduits, avec toute la plomberie pour faire fonctionner la commutation de rôle et d’orientation USB, ainsi que le mode alternatif DisplayPort. Les interconnexions et les domaines de puissance sont également décrits pour les QUP sur cette plate-forme.
- Les PMIC précédemment ignorés sont décrits pour le kit de développement matériel (HDK) SM8350 et les régulateurs PMR735a sont introduits. L’état pinctrl pour uart18 est corrigé.
- Sur le SM8450, les routes audio HDK sont corrigées pour activer les microphones analogiques sur la carte. L’ajout du PRNG est annulé, au profit d’un ajout prochain d’un véritable RNG.
- Les constantes sont remplacées par les définitions QCOM_SCM_VMID_* sur diverses cartes.
- La carte SM8550 QRD bénéficie du support Bluetooth et le contrôleur d’horloge de la caméra est décrit.
- Un certain nombre de correctifs sont introduits dans diverses plates-formes et cartes, pour s’aligner sur les liaisons Devicetree.
- Armer les mises à jour defconfig – N/A
- IOMMU
-
- Mises à jour de la configuration d’Arm64
- Activez le mode alternatif DisplayPort requis pour que la sortie DisplayPort fonctionne sur des appareils tels que la plate-forme Qualcomm Robotics RB5.
- Activer le pilote de redriver SuperSpeed NB7VPQ904M, utilisé dans SM8550
- Activer le pilote LPASS pinctrl pour SM6115 et SM8350
- Activez le pilote phy USB M31 trouvé dans IPQ5332.
- Nouveaux appareils et cartes
- Téléphones Xiaomi Redmi Note 9 basés sur le Snapdragon 720G
- Fairphone 5 basé sur QCM6490
- BQ Aquaris M5 basé sur MSM8939
- Mises à jour de la configuration d’Arm64
- MédiaTek
- Remoteproc – La prise en charge du contrôle du deuxième cœur dans la configuration dual-core SCP de Mediatek est introduite
- Pinctrl – Nombre de groupes UART supplémentaires ajoutés au pilote Mediatek MT7981
- PHY – Nouveau support pour Mediatek MT8188
- ASoC – Ajout de la prise en charge de nombreuses plates-formes Mediatek
- Régulateur
- Nettoyages et fonctionnalités supplémentaires pour le pilote Mediatek MT6358
- Ajout de Mediatek MT6366
- Contrôle thermique
- Ajout de la prise en charge du pilote Mediatek LVTS MT8192 ainsi que des routines de suspension/reprise
- Correction de la sonde THERMAL_V2 pour le pilote Mediatek LVTS
- Ajouter la prise en charge de mt7988 (Filogic 880) pour le pilote Mediatek LVTS
- GDN
- Ajouter la prise en charge de la fonction MT8188 dsi
- Correction d’un problème de couverture avec débordement d’entier involontaire
- Ajouter la prise en charge de la fonction MT8188 dp/edp
- Correction d’une fuite de mémoire sur la détection audio de rappel ->get_edid et le chemin d’erreur.
- Ajouter une capacité de sélection dynamique de connecteur
- MediaTek DDP GAMMA – Prise en charge des LUT 12 bits
- mtk_dsi : Correction des paramètres/gestion de NO_EOT_PACKET
- Wi-Fi MediaTek (mt76) :
- Nouveau sous-pilote pour les périphériques USB/PCIe mt7925 (WiFi 7)
- Pontage matériel sans fil <> Ethernet dans les puces MT7988
- Améliorations de la stabilité mt7603/mt7628
- Autres nouvelles plates-formes matérielles et SoC Arm
- AMD – Pensando Elba est une unité de traitement de données basée sur des cœurs de processeur Cortex-A72
- Aspeed – Contrôleur de gestion de châssis Minevra de Facebook utilisant la puce AST2600
- Intel – USRobotics USR8200 est un NAS/Pare-feu/routeur basé sur l’ancienne plateforme Intel IXP4xx
- Microchip – Carte de curiosité SAMA5D29
- NXP – SoM Variscite VAR-SOM-MX6 basé sur i.MX6Q
- Renesas – SoC automobile R8A779F4 (R-Car S4-8) et SoC intégré RZ/G3S (R9A08G045).
- STMicro – Carte de développement Octavo OSD32MP1-RED basée sur STM32MP157
- Modifications liées au Raspberry Pi :
- Corriger la désactivation de la LED d’activité du Raspberry Pi 400
- Correction de la régression du débit sur Raspberry Pi 0/3
Mises à jour RISC-V
RISC-V progresse bien avec le journal des modifications suivant.
- Prise en charge de cbo.zero dans l’espace utilisateur
- Prise en charge des CBO sur les systèmes basés sur ACPI
- Une poignée d’améliorations pour les opérations de vidage du cache T-Head
- Prise en charge des piles d’appels fantômes logiciels
- Divers nettoyages et correctifs
- Gagnant
- Nettoyages RISC-V DT
- Ajout d’une nouvelle propriété ISA et d’un nœud PMU à Allwinner D1
- Puce électronique
- Convertissez les arbres de périphériques PolarFire SoC pour utiliser les nouvelles propriétés « riscv,isa-base » et « riscv,isa-extensions ». Pour des raisons de compatibilité avec d’autres projets, « riscv,isa » reste.
- La fréquence de base de temps sur le SoC PolarFire n’est pas définie par un oscillateur sur la carte, mais plutôt par un diviseur interne, déplacez donc la propriété vers mpfs.dtsi.
- SiFive – IRQ – Empêche l’enregistrement des opérations syscore plusieurs fois dans le pilote de la puce SiFive PLIC.
- Sophogo
- ÉtoileCinq
- Gestion de l’alimentation – Ajout de la prise en charge du JH7110 AON PMU
- Nœuds DT liés à l’audio (prise en charge PWM-DAC)
MIPS sous Linux 6.7
Il y aura un moment où je n’aurai plus besoin de faire de rapport sur MIPS, même s’il restera en vie indirectement via l’architecture Loongarch, car il n’y a eu que des changements mineurs cette fois-ci, y compris la suppression d’une architecture. Voici le journal des modifications complet :
- MIPS : AR7 : supprimer la plateforme
- chien de garde : ar7_wdt : supprimez le pilote pour préparer la suppression de la plate-forme
- vlynq : supprimer le pilote de bus
- mtd : analyseurs : ar7 : supprimer le support
- série : 8250 : suppression du support AR7
- arch: mips : supprimez ReiserFS de defconfig
- MIPS : lantiq : supprimez l’inclusion inutile de
- MIPS : lantiq : Correction de l’avertissement pcibios_plat_dev_init() « aucun prototype précédent »
- MIPS : KVM : correction d’un avertissement de build concernant une variable définie mais non utilisée
- MIPS : supprimez le code mort dans relocate_new_kernel
- mips : dts : ralink : mt7621 : renommer GnuBee GB-PC1 et GnuBee GB-PC2
- mips : dts : ralink : mt7621 : définir chaque réinitialisation comme un élément
- mips: dts: ingenic : supprime les propriétés de type sonde inutiles
- MIPS : loongson32 : Supprimez dma.h et nand.h
Pour encore plus de détails, vous pouvez consulter le journal complet des modifications de Linux 6.7 avec les messages de validation générés uniquement avec la commande git log v6.6..v6.7-rc8 --stat. Vous trouverez éventuellement plus d’informations sur le site KernelNewbies.
Retrouvez l’histoire de Raspberry Pi dans cette vidéo :
