При обсуждении очередной порции исправлений, предложенных для включения в ядро 6.11-rc5 автором Bcachefs, Линус Торвальдс написал, что начинает сожалеть о том, что принял файловую систему Bcachefs в состав ядра. Недовольство Торвальдса связано с тем, что Кент Оверстрит (Kent Overstreet), автор Bcachefs, на стадии финальных кандидатов в релизы, присылает слишком объёмные исправления, которые по сути, не только исправляют ошибки, но и продолжают развитие функциональности, при том, что функциональные изменения допускаются только на начальной стадии разработки новой ветки, а на стадии rc5 принимаются только отдельные небольшие исправления, размер которых желательно не должен превышать 100 строк кода.

Присланный для Bcachefs патч, в котором было добавлено 1309 строк и удалено 671 строк в 39 файлах, помимо исправления ошибок включал два значительные изменения: поддержку новой структуры данных для управления списком свободных элементов в кэше и возможность преобразования хэш-таблиц для кэша. Новая структура была добавлена для избавления от лишних блокировок кэша и исключения ситуаций, которые могут привести к конфликтам блокировок при многопоточных нагрузках.

Это не первый случай, когда крупные исправления для Bcachefs отправляются после окна приёма изменений, и не первый случай, когда вместо простых исправлений ошибок продвигаются более тяжёлые функциональные дополнения, вносимые через запросы на внесение исправлений на финальных стадиях разработки новой ветки. Линус Торвальдс ответил на присланный pull-запрос:

«Хватит. Последний pull-запрос также был большим. Данный pull-запрос тоже слишком объёмный, затрагивает вещи, не относящиеся к Bcachefs, и даже отдалённо не является какой-то регрессией. В какой-то момент «исправление чего-то» просто превращается в разработку, и это тот самый момент. Никто в здравом уме не использует Bcachefs и не ожидает от него стабильности, поэтому каждый пользователь — это область экспериментов. Патчи Bcachefs стали своего рода «большой разработкой во время цикла подготовки релиза, а не до него», до такой степени, что я начинаю сожалеть о принятии Bcachefs. Если Bcachefs не может нормально работать в соответствии с графиком разработки основного (upstream) ядра, возможно, его не должно быть в основном ядре. Это уже выходит за рамки смешного».

Кент Оверстрит ответил, что Bcachefs определённо более надёжна, чем Btrfs и он работает над тем, чтобы сделать её более устойчивой и надежной, чем XFS и EXT4, благодаря реализации механизма сквозной целостности данных (end to end data Integrity). Кент также подчеркнул, что предлагаемые изменения напрямую касаются повышения надёжности, и если ошибка в других подсистемах ядра возможно ограничится сбоем и перезагрузкой, то в файловых системах цена ошибки очень высока и может привести к скрытому повреждению данных, которое может быть замечено лишь недели спустя.

Торвальдс возразил, что до сих пор не существует крупных дистрибутивов Linux, использующих Bcachefs, и указал на то, что следует соблюдать правила разработки релизов ядра Linux, так как существует вероятность появления новых ошибок из-за подобных крупных патчей, содержащих более чем 1000 строк кода. В настоящий момент обсуждаемые исправления к Bcachefs не приняты в ядро Linux, а разработчик Bcachefs пока не подготовил обновлённый вариант pull-запроса, избавленный от добавления новой функциональности и сосредоточенный только на исправлении ошибок.

// cc-by opennet.ru
// converted with crypt’s opennet autoreposter <<<

  • xwicked
    link
    fedilink
    arrow-up
    0
    ·
    2 years ago

    Кент Оверстрит ответил, что Bcachefs определённо более надёжна, чем Btrfs и он работает над тем, чтобы сделать её более устойчивой и надежной, чем XFS

    А-ха-ха. А мой велосипед будет круче! Ну, шо, пусть дальше выёживается. Я бы после такого же пула, выкинул бы его из ядра.

      • Oberstserj
        link
        fedilink
        arrow-up
        0
        ·
        2 years ago

        Что велосипедишь?

        На плоской земле велосипед не нужен.

      • xwicked
        link
        fedilink
        arrow-up
        0
        ·
        2 years ago

        Что велосипедишь?

        “А мой велосипед будет круче!”

        В кавычки не взял простою Тут все на btrfs жалуются, что это велосипед кривой, а он типо говорит, что его велосипел будет круче других.

    • Oberstserj
      link
      fedilink
      arrow-up
      0
      ·
      2 years ago

      Я бы после такого же пула, выкинул бы его из ядра.

      Дак ты ж только выкидывать и умеешь)

      Вот приняяять…причем осознанно, разобравшись.