La version stable de Linux 4.3 est généralement disponible après sept releases candidates (RC). Mais comme d’habitude, le « seigneur » de Linux a encore fait preuve de « tolérance zéro », après avoir découvert une sorte d’incompétence dans le travail des développeurs du noyau, quelques jours avant la sortie.
Comme l’explique Linus Torvalds dans la liste de diffusion du noyau Linux (LKML), cette nouvelle version embarque un éventail de changements et améliorations. Il met particulièrement en évidence une mise à jour du code réseau et la correction d’un bogue du mode vm86. Linux 4.3 est arrivé avec moins d’incidents, à part le nouveau code dans
net/ipv6/ip6_output.c que Linus a trouvé un peu plus éprouvant pour les nerfs. En effet, quelques jours avant la sortie officielle, Linus Torvalds n’a pas manqué de qualifier de merde, le nouveau code dit « amélioré ».
Ci-dessous l'ancien code.
mtu -= hlen + sizeof(struct frag_hdr);
Ci-dessous le nouveau code.
1 2 3
| if (overflow_usub(mtu, hlen + sizeof(struct frag_hdr), &mtu) ||
mtu <= 7)
goto fail_toobig; |
À propos du nouveau code, Linus s’indigne : «
le code ci-dessus est de la merde, et il génère du code de merde. Il semble mauvais, et il n’y a aucune raison pour cela. » Torvalds critique le fait que ce code «
utilise des trucs de fantaisie qui nécessitent un support pour un compilateur magique intégré », pour ne citer que cette seule critique. Sans indexer des personnes en particulier, il continue pour dire que quiconque croit qu’un tel code est lisible, efficace (même avec le support du compilateur magique), et particulièrement sûr, «
est tout simplement incompétent et à côté de la plaque ». «
Débarrassez-vous de cela. Et je ne veux plus jamais voir cette merde », a-t-il conclu en parlant du code. Il propose donc un nouveau code qu’il estime meilleur avec le même nombre de lignes, et qui «
n’utilise pas de fonctions auxiliaires folles dont personne ne sait ce qu'elles font, et qui rend beaucoup plus clair ce qu’il fait. »
Ci-dessous le code proposé par Linus Torvalds.
1 2 3
| if (mtu < hlen + sizeof(struct frag_hdr) + 8)
goto fail_toobig;
mtu -= hlen + sizeof(struct frag_hdr); |
La nouvelle version de Linux vient par ailleurs avec un support pour les graphiques fournis par les processeurs Skylake d’Intel et R9 Fury d’AMD. Le support pour le système de fichiers EXT3 a quant à lui disparu, sans trop de douleur pour les utilisateurs étant donné qu’il s’agit d’un sous-ensemble de EXT4. Linux 4.3 accorde également un intérêt particulier aux bureaux virtuels Linux avec un support OpenGL 3.3 pour VMware. On note non seulement des mises à jour de pilotes ainsi que de nouveaux pilotes, mais encore quelques autres corrections dans ARM.
Comme à l’accoutumée, la fin du développement de cette version annonce également l’ouverture d’un nouveau cycle de développement, ici Linux 4.4. Si la version 4.3 n’est pas une version LTS (support à long terme), Linus Torvalds annonce à l’avance que Linux 4.4 en sera une.
Sources :
Sortie de Linux 4.3,
LKML,
Git Kernel.
Et vous ? Que pensez-vous des changements et nouveautés dans Linux 4.3 et de la nouvelle critique de Linus Torvalds ?
Voir aussi Forum Linux