El sistema de archivos BcacheFS, desarrollado por Kent Overstreet, enfrenta un momento crítico tras años de esfuerzos por lograr su inclusión en el kernel de Linux. A pesar de haber sido aceptado a finales de 2022, los recientes comentarios de Linus Torvalds, creador de Linux, sugieren que podría haber un arrepentimiento respecto a su decisión de integrar BcacheFS en el núcleo del sistema operativo.
Kent Overstreet ha trabajado durante más de tres años para que BcacheFS, un sistema de archivos híbrido diseñado para combinar las ventajas de los sistemas de archivos tradicionales como EXT4 y XFS con características avanzadas de sistemas más modernos como Btrfs, sea aceptado en el kernel de Linux. Sin embargo, este proceso ha sido todo menos sencillo. En varias ocasiones, Overstreet enfrentó rechazos por parte de Torvalds, quien incluso llegó a reprender públicamente los intentos anteriores de inclusión debido a la naturaleza no estándar de las solicitudes presentadas.
Tras múltiples intentos, la comunidad de desarrolladores de Linux celebró la inclusión de BcacheFS en el kernel a finales del año pasado. Este paso representaba un avance importante para Overstreet y su equipo, y parecía ser un voto de confianza de Torvalds en el potencial del proyecto. Sin embargo, las cosas han dado un giro inesperado en las últimas semanas.
El descontento actual de Torvalds surge por la forma en que Kent Overstreet ha manejado el desarrollo de BcacheFS después de su fusión en el kernel. Durante la fase de candidaturas de la versión 6.11-rc5, Overstreet presentó un parche significativo que no solo corregía errores, sino que también introducía nuevas características y afectaba a un número considerable de archivos, algo que va en contra de las directrices establecidas para estas fases del ciclo de desarrollo.
Los números hablan por sí solos: el parche propuesto por Overstreet añadía 1309 líneas de código, eliminaba 671 y afectaba a 39 archivos. Esto incluyó dos cambios importantes en la estructura de datos: una nueva lista de elementos libres en el caché y la capacidad de transformar tablas hash. Estos cambios, diseñados para mejorar el rendimiento en situaciones con múltiples subprocesos, no fueron bien recibidos por Torvalds, quien expresó su creciente frustración.
La fase rc5 del ciclo de lanzamiento de Linux es conocida por aceptar únicamente correcciones menores, generalmente limitadas a menos de 100 líneas de código. Torvalds, firme en su postura, rechazó el parche de BcacheFS, señalando que su tamaño y el hecho de que introdujera cambios funcionales en lugar de solo corregir errores, lo convertía en un desarrollo nuevo, algo que no está permitido en esta etapa.
En su respuesta, Torvalds fue contundente:
"Sí, no, ya es suficiente. El último tirón ya fue grande. Esto es demasiado grande, toca cosas que no son de BcacheFS y ni siquiera es remotamente algún tipo de regresión. Nadie en su sano juicio usa BcacheFS y espera que sea estable, por lo que cada usuario es un sitio experimental. Los parches BcacheFS se han convertido en una especie de 'mucho desarrollo' durante los ciclos de lanzamiento en lugar de antes de ellos, hasta el punto en que estoy empezando a arrepentirme de haber fusionado BcacheFS".
Este comentario refleja la creciente tensión entre los desarrolladores principales del kernel y Overstreet, quien continúa enviando cambios significativos más allá de las ventanas de inserción permitidas.
Overstreet defendió sus acciones, argumentando que BcacheFS es más confiable que otros sistemas de archivos como Btrfs, y que está trabajando arduamente para superar la confiabilidad de sistemas más establecidos como XFS y EXT4. Su objetivo es implementar una integridad de datos de extremo a extremo que, según él, sería un avance importante en la seguridad de los sistemas de archivos.
Además, destacó que los cambios propuestos están orientados específicamente a mejorar la confiabilidad del sistema de archivos, señalando que los errores en este tipo de subsistemas pueden ser catastróficos, con consecuencias como la corrupción de datos, que podrían pasar desapercibidas durante semanas.
La principal preocupación de Torvalds no es si BcacheFS es o será más confiable que otros sistemas de archivos, sino la necesidad de seguir las reglas y las directrices del desarrollo del kernel. Según Torvalds, BcacheFS sigue siendo un sistema de archivos experimental, y la introducción de grandes cambios fuera del ciclo de desarrollo adecuado podría introducir errores imprevistos.
Finalmente, Torvalds dejó claro su escepticismo sobre el futuro de BcacheFS, respondiendo con dureza a Overstreet:
"Lo creeré cuando haya distribuciones importantes que lo usen y tenga muchos usos variados. Pero eso ni siquiera cambia el problema: no estás solucionando una regresión, estás haciendo un nuevo desarrollo para solucionar algún viejo problema, y ahora… literalmente también están editando archivos que no son BcacheFS. ¡Ya es suficiente!"
El destino de BcacheFS en el kernel de Linux parece más incierto que nunca. Mientras Kent Overstreet continúa defendiendo la importancia y las mejoras que trae su sistema de archivos, el descontento de Linus Torvalds sugiere que la paciencia de los desarrolladores principales del kernel se está agotando. Las reglas del desarrollo de Linux son claras, y cualquier sistema de archivos que no se ajuste a ellas podría enfrentar la exclusión. Si BcacheFS no puede adaptarse a estos ciclos, podría quedarse fuera del núcleo de Linux, poniendo en peligro años de esfuerzo.
Añadir comentario
Comentarios