Linus Torvalds corrige un bug du GPU Intel Xe vieux de deux ans avec l’aide de l’IA
Points clés
- •Le bogue provenait d’un commit vieux d’environ deux ans (37173392741c) qui utilisait round_up() au lieu de round_down() dans le calcul du décalage CCS pour l’allocation de VRAM, ce qui faisait attribuer des métadonnées de compression comme mémoire vidéo utilisable.
- •L’enquête de Torvalds a nécessité 24 correctifs de débogage et 18 démarrages du noyau avant qu’il n’identifie l’appel de fonction erroné, corrigé par le commit 818bebeb63dd.
- •Bien qu’un outil d’IA ait aidé à ajouter du code de diagnostic et à analyser la sortie, il a à un moment conclu que le problème était insoluble — une évaluation que Torvalds a rejetée avant de trouver lui-même la solution.
- •Le bogue a particulièrement touché les utilisateurs de matériel Intel Battlemage G21 (la puce derrière les cartes Arc de série B), provoquant corruption de l’écran et redémarrages forcés des gestionnaires d’affichage.
- •La correction doit être intégrée à Linux version 7.3 et devrait être rétroportée vers les versions stables du noyau, afin de résoudre les problèmes d’affichage des utilisateurs sur des versions plus anciennes du noyau.

Linus Torvalds, créateur et principal mainteneur du noyau Linux, a intégré le 21 août 2026 une correction d’une seule ligne au pilote graphique Xe d’Intel. Le patch lui-même était d’une simplicité triviale ; le chemin de débogage nécessaire pour y parvenir ne l’était pas du tout.
L’effort a nécessité 24 correctifs de débogage et 18 démarrages du noyau, a indiqué Torvalds, avec un outil d’IA jouant un rôle important dans la simplification du travail. Il a aidé à ajouter du code de diagnostic et à analyser la sortie — et, à un moment, a conclu que le problème était essentiellement insoluble. Torvalds a rejeté cette évaluation, a poursuivi ses efforts et a trouvé la réponse malgré tout.
Un seul appel de fonction derrière des mois de difficultés
La cause profonde était un appel de fonction incorrect dans un commit antérieur, identifié comme 37173392741c et datant d’environ deux ans. Ce commit utilisait round_up() là où round_down() était requis dans le calcul du décalage CCS pour l’allocation de VRAM. CCS — Compression Control Surface — désigne les métadonnées que les GPU Intel utilisent pour suivre l’état de compression des tampons en mémoire vidéo ; comme d’autres zones réservées, elles dépendent d’un décalage correctement calculé afin que l’espace qu’elles occupent ne soit pas attribué à autre chose.
En conséquence, le noyau a alloué de manière incorrecte des métadonnées de compression comme s’il s’agissait de mémoire vidéo utilisable. Il en a résulté une corruption des tables de pages, qui s’est manifestée par une corruption de l’écran et des redémarrages forcés des gestionnaires d’affichage.
Les utilisateurs exécutant du matériel Intel Battlemage G21 dans certaines charges de travail ont été particulièrement touchés. Battlemage est l’architecture GPU discrète de deuxième génération d’Intel, et G21 est la puce à la base des cartes de la série Arc B. Torvalds utilisait lui-même un système Battlemage G21, ce qui a rendu le bogue facile à reproduire une fois que certains changements côté espace utilisateur ont déclenché les conditions.
La correction, identifiée comme le commit 818bebeb63dd, modifie un seul appel de fonction.
L’IA comme aide au débogage, pas comme sauveur
Torvalds a même laissé l’IA aider à rédiger le message de commit, un geste modeste mais symboliquement significatif de la part de quelqu’un qui a historiquement été attaché aux standards de communication du noyau.
Au milieu de la session de débogage, l’IA a suggéré que le problème ne pouvait pas être résolu, conseillant en substance à Torvalds d’abandonner. Il a ignoré cette recommandation, a poursuivi le cycle méthodique de correctifs, de redémarrages et d’analyses, puis a fini par identifier la fonction d’arrondi défectueuse.
Cet épisode contraste également avec les frustrations antérieures de Torvalds concernant l’IA dans le processus de développement du noyau. Il a souvent dénoncé l’afflux de correctifs et de communications générés par l’IA et soumis à la liste de diffusion du noyau, qu’il a en grande partie qualifiés de spam de faible qualité. Utiliser l’IA comme assistant personnel de débogage est un cas d’usage fondamentalement différent de la réception de contributions générées par l’IA sans sollicitation.
Une incursion personnelle rare dans le code GPU
Le développement des pilotes graphiques sous Linux est généralement pris en charge par des équipes dédiées chez Intel, AMD et d’autres fournisseurs matériels, ainsi que par des contributeurs indépendants spécialisés dans le sous-système DRM (Direct Rendering Manager). Le fait que Torvalds débogue et corrige personnellement un problème dans le pilote Xe est suffisamment inhabituel pour mériter d’être souligné. Le pilote Xe est aussi récent à l’échelle du noyau : Intel l’a intégré au noyau principal en 2024 dans l’objectif de remplacer à terme i915, le pilote historique qui sert le matériel graphique Intel depuis environ deux décennies, de sorte que certaines de ses voies de code ont beaucoup moins de recul que leurs équivalents i915 éprouvés.
Le correctif est prévu pour Linux version 7.3, avec l’attente qu’il soit rétroporté vers les versions stables du noyau. Étant donné que le bogue sous-jacent existe depuis environ deux ans, ce rétroportage devrait résoudre le problème pour les utilisateurs des anciennes versions du noyau qui rencontrent des problèmes d’affichage intermittents avec du matériel Intel concerné. Pour ceux qui suivent la correction, les annonces de publication des noyaux stables sont l’endroit où un rétroportage de 818bebeb63dd devrait apparaître.
Une attention large dans les communautés open source
Ce développement a suscité une forte attention au sein des communautés Linux et open source, avec des discussions animées sur Phoronix, Reddit et Hacker News.