LINUX.ORG.RU

История изменений

Исправление khrundel, (текущая версия) :

Но с другой стороны - разве это все не должно подключаться в ведро через какой-то «интерфейс»? Почему именно в ядре должна быть какая-то особенная реализация чтоб еще одна ФС поддерживалась?

На практике не работает. Чтоб разработать нормальный, производительный интерфейс плагина обычно нужно знать, что этот плагин будет делать и как будет устроен. Т.е. можно разработать интерфейс под существующие реализации файловых систем, но он не подойдёт для будущих.

Например, когда bcachefs пытались смержить в апстрим, выяснилось, что автору понадобился особый лок, в котором кроме shared/exclusive есть третья блокировка intent, которая не позволяет другие intent и exclusive блокировки, но позволяет shared и может быть переключено в exclusive. Торвальдс в ответ предложил просто добавить это третье состояние в существующий примитив. Т.е. идея неплохая, но до bcachefs никому не была нужна.

Исходная версия khrundel, :

Но с другой стороны - разве это все не должно подключаться в ведро через какой-то «интерфейс»? Почему именно в ядре должна быть какая-то особенная реализация чтоб еще одна ФС поддерживалась? На практике не работает. Чтоб разработать нормальный, производительный интерфейс плагина обычно нужно знать, что этот плагин будет делать и как будет устроен. Т.е. можно разработать интерфейс под существующие реализации файловых систем, но он не подойдёт для будущих.

Например, когда bcachefs пытались смержить в апстрим, выяснилось, что автору понадобился особый лок, в котором кроме shared/exclusive есть третья блокировка intent, которая не позволяет другие intent и exclusive блокировки, но позволяет shared и может быть переключено в exclusive. Торвальдс в ответ предложил просто добавить это третье состояние в существующий примитив. Т.е. идея неплохая, но до bcachefs никому не была нужна.