Al discutir otro conjunto de correcciones propuestas para incluir en el núcleo 6.11-rc5 por parte del autor de Bcachefs, Linus Torvalds escribió que comienza a arrepentirse de haber aceptado el sistema de archivos Bcachefs en el núcleo. La insatisfacción de Torvalds se debe a que Kent Overstreet, autor de Bcachefs, envía correcciones demasiado extensas en la fase de candidatos finales para lanzamientos, las cuales no solo corrigen errores, sino que también continúan el desarrollo de funcionalidades, a pesar de que los cambios funcionales solo se permiten en las primeras etapas del desarrollo de una nueva rama, mientras que en la etapa rc5 solo se aceptan correcciones pequeñas y aisladas, que preferiblemente no deben exceder las 100 líneas de código.
El parche enviado para Bcachefs, que agregó 1309 líneas y eliminó 671 líneas en 39 archivos, además de corregir errores, incluía dos cambios significativos: soporte para una nueva estructura de datos para gestionar la lista de elementos libres en la caché y la posibilidad de transformar tablas hash para la caché. La nueva estructura se agregó para eliminar bloqueos innecesarios en la caché y evitar situaciones que podrían provocar conflictos de bloqueos bajo cargas multihilo.
No es la primera vez que se envían grandes correcciones para Bcachefs después del período de aceptación de cambios, y no es la primera vez que se promueven adiciones funcionales más pesadas en lugar de simples correcciones de errores a través de solicitudes de incorporación de cambios en las etapas finales del desarrollo de una nueva rama. Linus Torvalds respondió a la solicitud de extracción enviada:
«Basta. La última solicitud de extracción también fue grande. Esta solicitud de extracción también es demasiado extensa, toca cosas que no están relacionadas con Bcachefs, y ni siquiera se acerca a ser una regresión. En algún momento, 'solucionar algo' simplemente se convierte en desarrollo, y ese es el momento. Nadie en su sano juicio usa Bcachefs y espera estabilidad de él, por lo que cada usuario es un campo de experimentos. Los parches de Bcachefs se han convertido en una especie de 'gran desarrollo durante el ciclo de preparación de la versión, y no antes de ello', hasta el punto de que empiezo a arrepentirme de haber aceptado Bcachefs. Si Bcachefs no puede funcionar adecuadamente de acuerdo con el calendario de desarrollo del núcleo principal, tal vez no debería estar en el núcleo principal. Esto ya supera lo ridículo».
Kent Overstreet respondió que Bcachefs es definitivamente más confiable que Btrfs y está trabajando para hacerlo más estable y confiable que XFS y EXT4, gracias a la implementación de un mecanismo de integridad de datos de extremo a extremo. Kent también subrayó que los cambios propuestos se centran directamente en mejorar la confiabilidad, y si un error en otros subsistemas del núcleo podría limitarse a un fallo y reinicio, en los sistemas de archivos el costo de un error es muy alto y puede llevar a daños ocultos en los datos, que pueden ser notados solo semanas después.
Torvalds argumentó que aún no existen distribuciones importantes de Linux que utilicen Bcachefs, y señaló que deberían seguirse las reglas de desarrollo de releases del núcleo de Linux, ya que existe la posibilidad de que aparezcan nuevos errores debido a parches grandes como estos que contienen más de 1000 líneas de código. En este momento, las correcciones discutidas para Bcachefs no han sido aceptadas en el núcleo de Linux, y el desarrollador de Bcachefs aún no ha preparado una versión actualizada de la solicitud de extracción, libre de adición de nuevas funcionalidades y centrada únicamente en la corrección de errores.
Fuente: opennet.ru
