Bilbao, Espagne - : Lors de l'Open Source Summit Europe, Jonathan Corbett, développeur du noyau Linux et rédacteur en chef de Linux Weekly News, a présenté certaines nouveautés du noyau Linux et de son évolution.
Voici un changement majeur à venir : Le support à long terme (LTS) pour les noyaux Linux passe de six à deux ans.
Actuellement, il existe six noyaux Linux LTS : 6.1, 5.15, 5.10, 5.4, 4.19 et 4.14. Selon le processus en vigueur jusqu'à présent, la version 4.14 disparaîtrait en janvier 2024, et un autre noyau serait ajouté. Toutefois, à l'avenir, lorsque le noyau 4.14 et les deux suivants disparaîtront, ils ne seront pas remplacés.
Les mainteneurs de code Linux sont en train de s'épuiser
Pourquoi ? C'est simple, a expliqué M. Corbett : "Il n'y a vraiment aucun intérêt à les maintenir aussi longtemps parce que les gens ne les utilisent pas".
Je suis d'accord. Je suis sûr que quelqu'un utilise encore la version 4.14 dans un système Linux de production, mais il ne doit pas y en avoir beaucoup.
Une autre raison, et un problème bien plus important que la simple maintenance des LTS, selon Corbett, est que les mainteneurs de code Linux sont en train de s'épuiser. Ce n'est pas que les développeurs soient un problème. Les dernières versions de Linux ont impliqué en moyenne plus de 2 000 programmeurs - dont environ 200 nouveaux développeurs - qui ont travaillé sur chaque version. Cependant, pour les responsables de la maintenance, c'est-à-dire les personnes qui vérifient le code pour s'assurer qu'il est adapté et qu'il fonctionne correctement, c'est une autre paire de manches.
"Cela ne peut pas durer, nous avons besoin d'aide"
Car les responsables de la maintenance se heurtent à de nombreux obstacles.
Surtout, de nombreux mainteneurs ne sont pas payés pour assurer la maintenance. Ils assurent la maintenance du code en plus de leur travail quotidien. En plus de cela, ils sont de plus en plus sollicités - à cause du manque de personnel et de l'utilisation de fuzzers pour trouver des bogues. Bien que les fuzzers soient utiles, ils découvrent également beaucoup trop de bogues mineurs, qui doivent tous être examinés puis rejetés par les responsables de la maintenance.
Le résultat ? Pour citer Josef Bacik, développeur et mainteneur du système de fichiers du noyau Linux : "Les mainteneurs sont en train de s'épuiser [parce que] les mainteneurs ne sont pas évolutifs". Darrick Wong, un autre mainteneur senior du noyau Linux, a ajouté : "Cela ne peut pas durer, nous avons besoin d'aide".
Faut-il rémunérer pour maintenir Linux ?
Comment peuvent-ils obtenir de l'aide ? Tout d'abord, M. Corbett suggère aux mainteneurs de demander à leur employeur de les rémunérer pour leur travail de maintenance du noyau Linux. Comme l'a fait remarquer M. Wong, "la plupart de mes amis travaillent pour de petites entreprises, des organisations à but non lucratif ou des administrations locales. Ils signalent les mêmes problèmes de surcharge de travail. Et ils voient le lien direct entre le manque de revenus et de ressources de leur organisation. Ils ne comprennent pas pourquoi la même chose nous arrive, à moi et à mes collègues, alors que nous travaillons tous pour des entreprises qui brassent des centaines de milliards de dollars".
C'est une bonne question. Les entreprises doivent comprendre qu'elles doivent rendre à Linux ce qu'elles lui ont donné si elles veulent continuer à en récolter les fruits.
Une question connexe : Linux est en train d'adopter Rust. Bien que ce soit une bonne nouvelle à bien des égards - Rust élimine des classes entières d'erreurs auxquelles le langage principal de Linux, le C, est vulnérable - cela pose également des problèmes pour les responsables de la maintenance. Après tout, si un mainteneur a passé 30 ans à travailler en C, lui demander de devenir un expert en Rust n'est pas une mince affaire.
La question de l'arrivée de Rust est un autre problème
De plus, Rust est encore en pleine évolution. De nombreux correctifs Rust sont nécessaires pour que le langage fonctionne correctement sous Linux. Cela signifie également que vous avez besoin de beaucoup de fix pour que Rust et Linux fonctionnent bien ensemble.
Par ailleurs, certains développeurs du noyau Linux n'aiment pas Rust. L'un d'entre eux a déclaré : "Il existe probablement des parties bien conçues et écrites de Linux qui n'ont pas connu de problème de sécurité de la mémoire depuis de nombreuses années. Il est insultant de présenter cela comme une amélioration par rapport à ce qui a déjà été réalisé."
Reste que trois nouveaux ajouts importants au code du noyau Linux, basés sur Rust, sont en cours d'élaboration, a déclaré Corbett. Il s'agit d'une implémentation de PuzzleFS, d'un serveur de système de fichiers en lecture/écriture Plan9 et -- celui qui fera le plus parler de lui -- du pilote du GPU M1 d'Apple. En effet, les premiers pilotes Linux OpenGL ES 3.1 sont désormais disponibles pour les GPU Apple des familles M1 et M2.
Un autre sujet d'actualité est la façon dont Red Hat a modifié sa licence Red Hat Enterprise Linux (RHEL), ce qui a incité Oracle, SUSE et la CIQ à forker RHEL avec l'Open Enterprise Linux Association (OpenELA). Si l'on fait abstraction des complications commerciales et des problèmes de licence qui ont conduit à cette bataille, il y a aussi des préoccupations concernant le noyau Linux.
Ces préoccupations tournent autour de la question suivante : quel noyau devez-vous utiliser pour votre distribution Linux ? Deux choix s'offrent à vous :
1) Exécuter le dernier noyau stable
2) Exécuter un ancien noyau avec des correctifs rétroportés. C'est ce que Red Hat et les autres distributeurs de version Linux Entreprise ont tendance à faire.
Cette dernière solution se traduit également par des noyaux spécifiques à chaque fournisseur. Bien que cela offre une certaine stabilité, cela éloigne ces distros du soutien de la communauté et les rend dépendantes de fournisseurs spécifiques. C'est cette dernière conséquence qui a poussé AlmaLinux et Rocky Linux à lancer leur propre version de CentOS (le clone gratuit de RHEL de Red Hat). Et ce après que Red Hat ait fermé CentOS en faveur de CentOS Stream. C'est ce qui a mis le feu aux poudres entre Red Hat et OpenELA. Ce que veut OpenELA est un clone de RHEL, qui utilise l'ancien noyau patché de RHEL.
Enfin, M. Corbett a rappelé que Scott McNealy, l'ancien PDG de Sun, a dit un jour : "L'open source est libre comme un chiot est libre". McNealy n'avait pas tort. L'utilisation de l'open source et de Linux est facile. Payer pour la formation nécessaire pour qu'il ne fasse pas de dégâts sur le sol de la cuisine, c'est plus difficile.
Source : ZDNet.com