Rust débarque enfin dans le noyau Linux | PC - Mac - Linux | Le site de Korben
Image illustrant l'article : Rust débarque enfin dans le noyau Linux

Rust débarque enfin dans le noyau Linux

par Korben ✨ -

La guerre fait rage dans les coulisses du noyau Linux car d’un côté, nous avons les vétérans du C qui hurlent à la trahison, et de l’autre, les évangélistes de Rust qui brandissent leurs promesses de sécurité mémoire !

Et au milieu de tout ça, y’a Linus Torvalds qui joue les arbitres en essayant de calmer tout le monde. Et pendant que les développeurs se chamaillent sur les forums comme des gosses dans une cour de récré, Rust vient discrètement de marquer un point décisif avec la sortie du kernel Linux 6.15.

Parce que oui, mes amis, c’est désormais officiel depuis le 25 mai 2025. Le premier driver DRM écrit entièrement en Rust vient d’être intégré dans le noyau Linux. On parle du driver NOVA, conçu spécialement pour les GPU NVIDIA RTX 2000 et plus récents donc c’est pas juste une petite bidouille expérimentale cachée dans un coin poussiéreux du code, mais plutôt un vrai driver qui va gérer vos cartes graphiques dernier cri.

Et croyez-moi, c’est pas rien dans le petit monde fermé du développement kernel car après des décennies de règne absolu du C, voilà qu’un langage tout neuf vient chambouler les habitudes bien établies. Ce driver NOVA, c’est le bébé des ingénieurs de Red Hat qui en avaient carrément marre de galérer avec “Nouveau”. Vous savez, ce driver open source qui fait ce qu’il peut pour faire tourner vos cartes NVIDIA mais qui reste souvent à la traîne face aux drivers propriétaires.

L’idée derrière NOVA selon la documentation officielle, c’est de repartir de zéro avec une approche plus moderne, en s’appuyant sur le GSP firmware de NVIDIA pour simplifier le boulot. Comme ça, finies les bidouilles de reverse engineering, et place à une coopération enfin civilisée.

Et concrètement, qu’est-ce que ça change pour vous ?

Eh bien, si vous avez une RTX 2070 ou plus récente qui traîne dans votre PC, NOVA pourrait bien devenir votre nouveau meilleur ami. Le driver est conçu pour être plus stable, plus performant et surtout plus sûr que son prédécesseur. Aux chiottes les plantages mystérieux qui vous font perdre trois heures de boulot sur Blender, terminées les corruptions mémoire qui transforment votre écran en sapin de Noël psychédélique pendant vos sessions de gaming. Que du bonheur !

Mais attention, on est encore au tout début de l’aventure hein. Les détails techniques publiés par Phoronix montrent que le code actuel de NOVA, c’est à peine 1200 lignes dont 700 en Rust pur. Pour vous donner une idée, c’est comme comparer un prototype de smartphone bricolé dans un garage à l’iPhone 16 Pro Max. Ça marche, ça montre le potentiel, mais y’a encore du chemin avant d’avoir un produit fini qui déchire. D’ailleurs, les développeurs ont été honnêtes dans leur approche puisqu’ils ont inclus une todo list de 400 lignes dans la documentation. Donc ils savent pertinemment qu’ils ont du pain sur la planche pour les prochains mois !!

Ce qui rend cette histoire encore plus savoureuse, c’est la guerre idéologique qui fait rage en coulisses depuis des mois. Greg Kroah-Hartman, l’un des lieutenants de Linus et maintenant fervent défenseur de Rust, a clairement pris position. Il explique que la majorité des bugs du kernel viennent de ces petites erreurs stupides du C qu’on traîne comme un boulet depuis 30 ans : les dépassements mémoire, les variables non initialisées, les fuites mémoire, tout ce bordel qui transforme le debug en cauchemar.

Et en face, vous avez les puristes qui voient d’un très mauvais œil cette invasion de barbares. Christoph Hellwig, par exemple, a carrément menacé de claquer la porte si le kernel devenait un “codebase multi-langage incontrôlable”. Genre, le mec préfère se casser du projet plutôt que d’apprendre le Rust. Ok Boomer ! C’est dire si le débat est tendu dans la communauté ! Linus Torvalds lui-même a dû intervenir pour calmer le jeu, expliquant que ces controverses avaient des “relents de guerre de religion”. Et si Linus en arrive à dire ça, c’est qu’on a atteint des niveaux de fanatisme assez impressionnants, lol.

Mais au-delà des ego froissés et des susceptibilités de développeurs, il faut reconnaître que Rust apporte des garanties concrètes qu’on peut plus ignorer. Là où le C vous laisse vous débrouiller avec la gestion mémoire comme un funambule sans filet au-dessus d’un précipice, Rust vous force à faire les choses proprement dès la compilation. C’est contraignant, certes, mais ça évite jusqu’à 70% des vulnérabilités qu’on retrouve habituellement dans le kernel et ce serait pas du luxe.

Pour les constructeurs comme NVIDIA, l’enjeu est carrément énorme. Ils ont tout intérêt à voir NOVA réussir parce que ça leur éviterait de maintenir deux drivers en parallèle : un propriétaire bourré de secrets pour Windows et un autre open source pour Linux qui traîne toujours la patte. Avec NOVA qui s’appuie directement sur leur GSP firmware, ils peuvent ainsi mutualiser les efforts et offrir une expérience plus cohérente sur toutes les plateformes. C’est du gagnant-gagnant !

Et puis, soyons honnêtes deux minutes, c’est aussi une question de génération pure et simple. Les nouveaux développeurs qui débarquent sur le marché maîtrisent souvent mieux Rust que C et former quelqu’un à écrire du C kernel-space sans faire d’erreurs fatales, c’est pas simple ! Avec Rust, au moins, vous gardez votre santé mentale intacte !

Bon, vous aurez compris de quel côté de l’Histoire je me situe mais l’ironie de cette situation, c’est que cette “révolution” se fait presque en catimini pendant que tout le monde regarde ailleurs. Rust s’est discrètement installé dans le kernel avec Linux 6.1 en 2022, et depuis, le langage grignote petit à petit du terrain comme une invasion silencieuse. Le driver NOVA qui vient d’arriver, n’est donc que la partie visible de l’iceberg car dans l’ombre, des dizaines d’autres composants commencent à adopter Rust pour leurs parties critiques.

Après nous, simples mortels, on s’en fout royalement que le driver soit écrit en C, en Rust ou en langage des signes, tant qu’il fait tourner nos jeux à 120 FPS sans planter toutes les cinq minutes. Et si Rust peut nous garantir ça tout en évitant les failles de sécurité qui transforment nos machines en passoires, alors welcome to the club sans hésitation !!

La suite des événements sera passionnante à suivre, j’en suis certain. NOVA va évoluer cycle après cycle, Linux va progressivement intégrer plus de composants en Rust, et les développeurs vont finir par s’habituer comme ils l’ont toujours fait… Et dans 5 ans, on se souviendra de cette époque comme celle où Linux a fait sa transition vers le tur-fu.

En attendant, si vous êtes du genre à compiler vos kernels maison pour le plaisir et que vous avez une RTX récente qui traîne, vous pouvez déjà tenter l’expérience avec NOVA, mais attention, hein, c’est encore très expérimental !!! Ne venez pas pleurer si ça explose !

Source