Le mainteneur du pilote graphique Nouveau du noyau Linux se retire du projet en évoquant « un environnement non inclusif et toxique »
tandis que le désaccord sur l'ajout de Rust dans le noyau se poursuit
La communauté du noyau Linux semble se déchirer ces derniers mois. Entre autres, l'on assiste à des tensions entre les factions au sein de la communauté du noyau et à des démissions très médiatisées. La dernière personne en date à avoir quitté le projet est Karol Herbst ; il était chargé du pilote graphique Nvidia « Nouveau » et de l'outil de suivi MMIO. Il a dénoncé l'environnement toxique qui règne au sein de la communauté du noyau. Avant lui, Hector Martin, fondateur et développeur principal d'Asahi Linux (le projet qui apporte Linux à Apple Silicon), a quitté son poste en dénonçant le leadership de Linus Torvalds et un certain nombre d'autres choses.
Karol Herbst a été développeur du pilote Nouveau pendant plus de dix ans. Nouveau est un projet de la fondation X.Org et de Freedesktop.org visant à produire des pilotes libres et open source pour les GPU Nvidia. Ils sont développés principalement par rétro-ingénierie des pilotes propriétaires de Nvidia.
Karol Herbst a par la suite été embauché par Red Hat. Bien qu'il soit plus connu ces jours-ci pour son travail sur Mesa et le pilote Rusticl OpenCL qui lui est associé, il est resté un mainteneur du pilote Nouveau pour le noyau Linux. Toutefois, le 15 février 2025, Karol Herbst a annoncé qu'il quittait son poste de mainteneur du pilote Nouveau en raison de divergences avec la communauté du noyau en amont. Karol Herbst dénonce un certain nombre de choses.
Karol Herbst dénonce un environnement non inclusif et toxique
La décision de Karol Herbst est basée sur son mécontentement face à l'absence d'un environnement inclusif au sein du groupe de développeurs, où, selon sa vision, la collaboration devrait être basée sur le respect mutuel et l'équité, sans permettre à certains pouvoirs tacites d'influencer le processus.
La controverse s'est intensifiée après qu'un autre mainteneur du noyau, Theodore Ts'o, a utilisé la métaphore « fine ligne bleue » pour décrire le rôle des mainteneurs, les comparant à une barrière qui sépare l'ordre de l'anarchie et garantit la qualité et la durabilité du code accepté.
L'expression « fine ligne bleue » est la traduction littérale de l'anglais « Thin Blue Line ». Ce terme symbolise le rôle des forces de l'ordre comme une barrière protégeant la société du chaos et de la criminalité. Toutefois, pour Karol Herbst, l'utilisation de cette analogie est « inacceptable ». Selon le mainteneur, elle peut avoir un impact négatif sur les personnes marginalisées et sur la perception d'une communauté qui devrait normalement être inclusive.Envoyé par Theodore Ts'o
Karol Herbst a déclaré que « ce langage ne crée pas un environnement inclusif » et a ajouté qu'un responsable qui prononce ces mots « ne peut pas être gardé » au sein de la communauté du noyau Linux. Mais Karol Herbst a fait l'objet de critiques pour avoir suggéré de mettre à l'écart l'auteur de ces propos.
« Thin Blue Line » : une expression entourée de controverses
En effet, l'utilisation de « Thin Blue Line » a suscité des controverses. Certains estiment qu'elle crée une division entre la police et le public, renforçant une mentalité de « nous contre eux ». Ce symbole a été associé à des mouvements politiques et récupéré par des groupes d'extrême droite, conduisant certaines institutions à interdire son affichage pour éviter toute polémique. Ainsi, la perception peut varier selon les contextes culturels et géographiques.
« Je ne peux pas, en toute bonne foi, continuer à faire partie d'une communauté où ces mots sont tolérés. Ces mots ne sont pas techniques, ils constituent une déclaration politique. Même si ce n'est pas intentionnel, ces mots ont un pouvoir, ils ont une signification dont il faut être conscient », a noté Karol Herbst. Il a souligné que malgré son départ, le pilote Nouveau continuera à être maintenu par deux développeurs, qui feront « un excellent travail ».
Certains critiques ne partagent pas toutefois son avis. « J'ai l'impression que le mainteneur essayait de dire qu'en tant que mainteneurs, nous voulons essayer de garder le chaos hors du code, et malheureusement la formulation qu'il a utilisée pour le dire était politiquement chargée », note un critique.
Le débat met également en évidence le fait que les mainteneurs, bien qu'essentiels pour éviter d'incorporer des changements instables ou déficients, perdent une partie de leur influence une fois que le code est intégré dans le noyau, ce qui les rend responsables des conséquences qui en découlent.
Ce scénario est aggravé lorsque des équipes intéressées uniquement par la promotion de leurs propres créations disparaissent après l'acceptation du code, laissant aux responsables la tâche ardue de corriger les erreurs. Il s'agit d'un problème récurrent dans la communauté du noyau Linux.
Lyude Paul et Danilo Krummrich, tous deux de Red Hat, restent responsables du pilote Nouveau. Les développeurs de Red Hat travaillent également au développement de NOVA, le nouveau pilote de noyau Nvidia open source basé sur Rust, qui exploite l'interface GSP pour les GPU Turing et plus récents.
Changements à la tête d'Asahi Linux à la suite d'une controverse
La communauté de développement du noyau Linux semble traverser une crise et certains mainteneurs de longue date du projet l'abandonnent. À en croire les messages publiés sur la liste de diffusion du noyau Linux, plusieurs causes profondes seraient à l'origine de cette situation : les divergences autour de l'intégration du langage Rust dans le noyau Linux, un environnement jugé toxique et le mécontentement à l'égard du leadership de Linus Torvalds.
Des inquiétudes sont apparues en août 2024 lorsque l'ingénieur logiciel de Microsoft Wedson Almeida Filho s'est retiré du projet Rust for Linux, citant sa frustration face à des « absurdités non techniques », ce qui est une façon de décrire la difficulté de collaborer avec ceux qui ont des objectifs différents.
Le problème s'est à nouveau posé en janvier 2025, lorsqu'une proposition d'abstraction permettant aux pilotes de périphériques écrits en Rust d'appeler l'API DMA de Linux principalement basé sur le langage C s'est heurtée à l'opposition ferme de Christoph Hellwig, un responsable du noyau.
Au début du mois, Hector Martin, chef du projet Asahi Linux, a annoncé brusquement qu'il quitte son poste. Hector Martin a déclaré que le projet était « devenu moins amusant au fil du temps », les frustrations des utilisateurs concernant la prise en charge des puces M3 et M4 et les fonctionnalités manquantes ayant eu raison de son plaisir. Dans son message de départ, il a également dénoncé le leadership de Linus Torvalds en matière de gestion du noyau.
Hector Martin a expliqué dans son message sur la liste de diffusion du noyau : « je démissionne de mon poste de chef du projet Asahi, avec effet immédiat. Le projet se poursuivra sans moi. Je travaille avec le reste de l'équipe pour gérer le transfert des responsabilités et des références administratives ».
Christoph Hellwig a assimilé le mélange des langages Rust et C dans le noyau Linux à un « cancer » et s'oppose vivement à la fusion du code du noyau Rust. Hector Martin a dénoncé les propos de Christoph Hellwig et le 7 février 2025, il a demandé à être retiré de la liste des mainteneurs de Linux.
Intégration de Rust dans le noyau Linux : une source de conflits
L'intégration du langage Rust dans le noyau Linux continue de créer des divergences d'opinions dans le rang des mainteneurs. Certains voient en Rust une opportunité d'améliorer la sécurité et la robustesse de Linux, notamment grâce à sa gestion de la mémoire et à sa prévention des erreurs courantes en C. D'autres expriment des réserves, soulignant la complexité du langage et les risques liés à son adoption dans un projet aussi vaste que Linux.
La principale raison d'envisager l'utilisation de Rust réside dans ses caractéristiques de sécurité de la mémoire. Le noyau Linux est écrit en C, un langage qui, bien que puissant, nécessite une gestion minutieuse de la mémoire pour éviter les bogues. Le langage Rust facilite l'écriture de codes sûrs, réduisant potentiellement les vulnérabilités et améliorant la stabilité. La possibilité d'écrire des pilotes plus sûrs est donc une motivation clé pour l'adoption de Rust.
Il n'est pas prévu de réécrire l'ensemble du noyau Linux en Rust, mais de l'introduire progressivement, en commençant par les nouveaux pilotes. Cette approche progressive vise à minimiser les perturbations et à donner aux responsables le temps de s'adapter au nouveau langage. Christoph Hellwig s'y oppose.
Il a déclaré : « si vous voulez rendre Linux impossible à maintenir à cause d'une base de code interlangage, faites-le dans votre pilote pour que vous ayez à le faire au lieu de répandre ce cancer dans les sous-systèmes centraux... Je ne veux pas qu'il s'approche d'une énorme base de code C que je dois maintenir ».
Les remarques de Christoph Hellwig contrastent avec les analyses du créateur de Linux, Linus Torvalds. Il est d'avis que Rust peut aider à corriger des erreurs commises en C. Il pense que Rust est une solution d’avenir pour le développement du noyau. Ainsi, Linus Torvalds considère la prise en charge de Rust pour le développement du noyau Linux comme une « une étape importante vers la capacité d'écrire les pilotes dans un langage plus sûr ».
Plus récemment, Christoph Hellwig a rapporté que Linus Torvalds est favorable à l'ajout de Rust dans le noyau et veut aller de l'avant dans ce projet. Selon Christoph Hellwig, Linus Torvalds aurait déclaré en privé qu'il passera outre le veto des mainteneurs pour fusionner le code du noyau Rust.
Source : liste de diffusion du noyau Linux
Et vous ?
Quel est votre avis sur le sujet ?
Que pensez-vous du départ du mainteneur du pilote Nvidia libre Nouveau pour Linux ?
Il juge la communauté du noyau Linux non inclusive et toxique. Qu'en pensez-vous ?
Que pensez-vous des tensions au sein de la communauté Linux, notamment au sujet de l'ajout de Rust au noyau ?
Quels impacts ces tensions pourraient-elles avoir sur le développement du noyau Linux ?
Voir aussi
Le mélange de Rust et de C dans Linux est assimilé à un « cancer » par un responsable du noyau, « je ne veux pas qu'il s'approche d'une énorme base de code C que je dois maintenir », dit-il à propos de Rust
Après un conflit au sujet de Rust dans Linux, le mainteneur principal de la distribution Asahi Linux annonce sa démission du projet et dénonce le leadership de Linus Torvalds en matière de gestion du kernel
Linus Torvalds envisagerait de fusionner le code du noyau Rust en dépit des objections des mainteneurs, qui assimilent le mélange de Rust et du C à un « cancer » qui rendrait Linux impossible à maintenir
Partager