L'intégration du système de fichiers Bcachefs dans le noyau Linux n'a pas été de tout repos. Bcachefs est resté dans une phase expérimentale depuis son ajout dans Linux 6.7 en raison de problèmes de stabilité. Ces problèmes ont été à l'origine d'une série de tensions entre le développeur de Bcachefs, Kent Overstreet, et Linus Torvalds. La dernière en date concerne la soumission tardive par Kent Overstreet d'une nouvelle fonctionnalité pendant la phase release candidate, étape normalement réservée aux correctifs de bogues. Malgré un compromis initial, les frictions ont continué. Excédé, Linus Torvalds a supprimé le support de Bcachefs du noyau pour Linux 6.17.Le processus de développement du noyau Linux est sujet à des disputes, à des opinions tranchées et, à l'occasion, à des affrontements dramatiques. Malgré cela, le développement a progressé régulièrement au fil des décennies, sous l'impulsion d'une communauté diversifiée de contributeurs aussi passionnés qu'attachés à leurs principes. De temps à autre, l'un de ces débats internes éclate au grand jour, comme cela a été le cas récemment avec Bcachefs.
Bcachefs est un système de fichiers Linux prometteur de type « copy-on-write » (COW) qui prend en charge le chiffrement, les instantanés, la compression, etc. Il est considéré comme un rival moderne de Btrfs et ZFS et a été initialement intégré au noyau 6.7, mais a toujours été qualifié d'expérimental.
Cependant, son intégration dans le noyau n'a pas été sans heurts. Au fil du temps, il est apparu clairement qu'il y avait des problèmes de stabilité, avec des corrections de bogues fréquentes et des commits conflictuels. Ce qui lui a valu de nombreuses critiques au fil des ans. Linus Torvalds en est même arrivé à admettre ouvertement, au milieu de l'année 2024, qu'il regrettait d'avoir autorisé l'ajout de la prise en charge de ce système de fichiers au noyau.
Plus de support de Bcachefs dans le noyau Linux à l'avenir ?
Malgré les nombreux problèmes de stabilité, le support de Bcachefs a été maintenu. Mais les désaccords persistants entre Kent Overstreet et Linus Torvalds se sont récemment intensifiés. Le conflit trouve son origine dans un débat de longue date sur le rythme du noyau : Linus Torvalds impose une discipline stricte en matière de cycle de publication, n'autorisant que des corrections minimes pendant la phase de versions candidates (release candidate - RC).
Lors du cycle de développement du noyau Linux 6.16, Kent Overstreet a soumis des modifications substantielles, notamment un patch pour une nouvelle fonctionnalité appelée « journal_rewind », pendant la phase de versions candidates. Cette fonctionnalité permet de réinitialiser l'ensemble du système de fichiers à un moment antérieur. Le développeur de Bcachefs a justifié cet ajout tardif par « des besoins urgents en matière de récupération de données ».
Linus Torvalds et d'autres mainteneurs ont déclaré que ce type de changement tardif peut introduire des régressions et enfreint les règles établies. Theodore Ts’o, développeur de longue date du noyau et responsable de ext4, a rappelé à Kent Overstreet que c'est le rôle de Linus Torvalds de faire respecter les règles.
Kent Overstreet a répliqué, arguant que les règles relatives à la fenêtre de fusion ne sont pas absolues et devraient permettre une certaine flexibilité, d'autant plus lorsque des données d'utilisateurs sont en jeu. Et malgré un compromis initial (le code a été intégré dans la branche principale pour 6.16-rc4), les frictions ont continué. Excédé par la situation, Linus Torvalds a finalement décidé de retirer Bcachefs du noyau pour Linux 6.17 :
La fin de cet article est réservée aux abonnés. Soutenez le Club Developpez.com en prenant un abonnement pour que nous puissions continuer à vous proposer des publications.
.