- Le travail d’intégration de Rust dans le noyau Linux a terminé sa phase expérimentale et est désormais reconnu comme un composant officiel
- Lors du Maintainers Summit annuel, les développeurs se sont accordés pour adopter la prise en charge de Rust comme une fonctionnalité permanente
- En conséquence, le tag « experimental » sera supprimé du code lié à Rust dans le noyau
- Un éditeur de LWN a déclaré que « l’expérience est terminée, et ce fut un succès », en évoquant les réalisations de l’équipe Rust for Linux
- Cela est considéré comme un tournant important dans l’élargissement des langages de développement du noyau, ainsi que dans son orientation vers la sécurité et la modernisation
Fin de l’expérience Rust dans le noyau et adoption officielle
- La prise en charge de Rust dans le noyau a été discutée lors du Maintainers Summit annuel, et les développeurs présents ont convenu que Rust n’était plus une fonctionnalité expérimentale
- Rust fait désormais pleinement partie du noyau
- En conséquence, la mention « experimental » sera retirée du code concerné
- Dans son billet, un éditeur de LWN a explicitement écrit : « l’expérience est terminée, et ce fut un succès »
- Il a également adressé un message de félicitations à l’équipe Rust for Linux pour son travail
Réaction de la communauté
- Le titre du billet a brièvement prêté à confusion, certains lecteurs croyant qu’il s’agissait d’un retrait de Rust
- Plusieurs commentaires ont exprimé des réactions du type « je me suis fait avoir un instant » ou « quel ascenseur émotionnel »
- Certains utilisateurs ont réagi avec humour en mentionnant le style de titres de Phoronix
- Ils ont aussi souligné l’utilité des benchmarks de Phoronix et de ses mises à jour sur l’écosystème open source
- D’autres commentaires ont rappelé que Microsoft introduit également Rust dans le noyau Windows
- Selon certains, plusieurs composants sont déjà écrits en Rust et inclus dans des versions livrées
Ce que signifie l’adoption de Rust
- Le passage de la prise en charge de Rust dans le noyau à une fonctionnalité officielle et pérenne inscrit durablement dans le développement du noyau le renforcement de la sécurité mémoire et l’adoption d’un langage moderne
- Avec l’adoption de Rust à la fois dans le noyau Linux et dans Windows, le renouvellement générationnel des langages de programmation système devient plus visible
- La communauté voit dans cette décision l’aboutissement d’une expérimentation réussie et attend désormais une extension future des modules du noyau basés sur Rust
3 commentaires
Cela dit, plusieurs mainteneurs n'ont-ils pas quitté le projet ?
Il n’existe qu’un seul livre sur le sujet en coréen, mais malheureusement, comme la manière d’utiliser Rust dans le noyau Linux a connu plusieurs changements cassants, il n’est plus du tout compatible avec les noyaux actuels. Ce serait vraiment bien qu’il soit mis à jour via GitHub ou d’autres canaux similaires.
Réactions sur Hacker News
La prise en charge de Rust a énormément progressé ces deux dernières années
on peut désormais écrire des modules du noyau presque sans boilerplate
la suppression du tag « experimental » me semble être une étape majeure
le vrai point de bascule sera probablement le jour où les distributions proposeront des noyaux avec la prise en charge de Rust activée par défaut
par exemple, NixOS et Arch activent l’écran de kernel panic avec QR code écrit en Rust
Fedora le prend probablement aussi en charge
CONFIG_RUST=ycela ne veut pas dire que le noyau prend en charge un espace utilisateur Rust, mais simplement qu’une partie du code du noyau est compilée avec
rustcAprès de longues résistances, voir Rust officiellement adopté dans le noyau Linux est émouvant
bravo à l’équipe Rust for Linux
je me demande si cet incident a été le premier domino du projet
Alex Gaynor, qui était co-mainteneur de Rust for Linux, s’est officiellement retiré
Miguel Ojeda reste désormais l’unique mainteneur officiel, avec plusieurs relecteurs de code
Je me demande si la suppression du tag « experimental » signifie que tous les mainteneurs sont désormais tenus de ne pas casser le code Rust
cela donne confiance aux développeurs pour investir dans des pilotes basés sur Rust
les règles restent les mêmes : on ne peut pas envoyer à Linus du code qui casse la build Rust
autrement dit, un mainteneur peut casser du code Rust interne sans enfreindre les règles
Je me demande si les architectures non prises en charge par Rust vont maintenant être abandonnées
les parties centrales du noyau doivent toujours être écrites en C
Le titre de l’article aurait été modifié en « The (successful) end of the kernel Rust experiment »
à cause des retours de la communauté selon lesquels le titre original était exagéré
selon les règles de Hacker News
il faut « ne modifier le titre d’origine que s’il est trompeur »
car un échec ne marque pas vraiment la fin d’une expérience
À la question « est-ce que c’est important ? »
Si les pilotes du noyau Linux prennent la direction de Rust, je me demande si les systèmes BSD comme FreeBSD subiront eux aussi la même oxydation
ou s’il y aura de la résistance et une bifurcation
Certains saluent l’arrivée de quelque chose de nouveau
grâce à sa sûreté mémoire et à son expressivité, Rust semble valoir cet effort
Je me demande quelles parties du noyau sont aujourd’hui écrites en Rust
voir cet article de Phoronix
Je me demande quelle proportion de unsafe il y a dans le code Rust du noyau
autrefois, beaucoup se plaignaient du fait que
unsafeétait trop pénible à utiliserles développeurs de pilotes ont très rarement besoin d’écrire de l’unsafe
unsafeest conçu par nature pour n’être utilisé qu’au niveau du code de bordurel’essentiel du code est écrit en Rust sûr
unsafereste difficile, mais dans le code réel des pilotes il apparaît très peupar exemple, pwm_th1520.rs ne contient
qu’une ligne d’unsafe pour prendre en charge
SendetSync