LINUXTALKS.CO

Отставка сопровождающего файловую систему XFS

 

L


0

0

Дэрик Вонг (Darrick Wong) объявил о снятии с себя полномочий сопровождающего файловую систему XFS в ядре Linux. По его словам он взял на себя непосильную ношу и выгорел, пытаясь совместить роль разработчика, рецензировщика, тестировщика, релиз-менеджера и контактного лица. Отмечается, что в подсистеме XFS хватает работы для 20 человек, но фактически ту же работу приходится выполнять вдвое меньшей командой.

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

После ухода с поста сопровождающего Дэрик намерен продолжить работу над рецензированием патчей и заняться развитием интересующих его возможностей XFS, таких как online fsck. Перед уходом Дэрик обобщил свой шестилетний опыт сопровождающего и подготовил рекомендации по оптимизации работы. Например, предлагается разделить полномочия сопровождающего, и передать отдельным людям ответственность за решение таких задач, как подготовка релизов, разбор ошибок, тестирование, взаимодействие с сообществом и сопровождение изменений для LTS-веток. В качестве замены для себя Дэрик рекомендовал утвердить отвечающим за подготовку релизов Кандана Баду (Chandan Babu) из компании Oracle.

>>> Подробности

★★★☆☆

Это то, о чем я всевремя говорю. Опенсорс не может существовать, каким его задумал столман. Усложнение софта (мировой тренд) и уход от принципов UNIX, маленьких утилит (корпорации) приводит к тому, что отдельные люди больше не могут осилить написание софта.

crypt    
★★★☆☆
Последнее исправление: crypt (всего исправлений: 1)

FreeBSD / Chrome

приходится тратить большую часть своего времени на бэкпортирование специфичных для дистрибутивов изменений

Зоопарк убивает

alexferman    
★★★★★
Linux / Firefox
Ответ на: комментарий от crypt

А я всё-таки повторюсь. Проблема - в нехватке денег. А нехватка денег - из-за того, что даже ярые фанаты предпочитают не донатить, когда можно не донатить, а взять бесплатно.

metalbeaver    
★★★★★★
Windows / Chrome
Ответ на: комментарий от metalbeaver

Ты дурной? При чем тут фанаты вообще? На таких фанатов как ты шляпа никогда и не надеялась, деньги вовсе не от таких идут.

shikata_ga_nai    
★★★★★
Последнее исправление: shikata_ga_nai (всего исправлений: 1)

Linux / Chrome
Ответ на: комментарий от metalbeaver

Что за хуйню я только что прочитал?

В оригинальном сообщении Darrick Wong нет ни слова про деньги, причины указаны совсем другие, коротко говоря истощение нервной системы.

Кроме того, он же сотрудник Oracle?! Уж не думаю, что они жопились на зарплату такому крутому хакеру..

Похоже, что на самом деле нехватка денег – это твоя хроническая проблема, и ты просто проецируешь.. Я прав?

ThePlayerZero    
★★
Android / Chrome
Ответ на: комментарий от alexferman

Я ожидал сообщение про кидалово на бабки )))

shikata_ga_nai    
★★★★★
Linux / Chrome
Ответ на: комментарий от ThePlayerZero

ни слова про деньги

Ой. А это что?

подсистеме XFS хватает работы для 20 человек, но фактически ту же работу приходится выполнять вдвое меньшей командой

metalbeaver    
★★★★★★
Windows / Chrome
Ответ на: комментарий от metalbeaver

Это нехватка кадровых ресурсов, написано же. Не денежных, а кадровых. Не нашлось ещё 10 людей, чтобы разгребать это говно (AI-generated bug-reports, backporting,..).

Ну вот сейчас они (наверное) там зачешутся и постараются таки расширить штат XFS-саппорта. И главной проблемой будет найти новых толковых людей, готовых разгребать эти авгиевы конюшни, а не их зарплата.

ThePlayerZero    
★★
Android / Chrome
Ответ на: комментарий от ThePlayerZero

Не нашлось ещё 10 людей, чтобы разгребать это говно

Надо просто денег предложить выше рынка.

metalbeaver    
★★★★★★
iPhone / Safari
Ответ на: комментарий от metalbeaver

Проблема - в нехватке денег. А нехватка денег

деньги тоже платят за какой-то конечный продукт. возьми ffmpeg - это UNIX-way и человек успешно сопровождает этот проект. возьми Slackware - патрик задыхается от кучи корпоративного крепа по принципу Комбайн, который может делать все.

crypt    
★★★☆☆
FreeBSD / Chrome
Ответ на: комментарий от shikata_ga_nai

При чем тут фанаты вообще? На таких фанатов как ты шляпа никогда и не надеялась, деньги вовсе не от таких идут.

я согласен. фанаты - это ни о чем.

crypt    
★★★☆☆
FreeBSD / Chrome
Ответ на: комментарий от metalbeaver

Вот тебя заклинило то на деньгах..

Сколько вообще в мире linux kernel developers? Сколько из них способны справляться с этими nightmare (цитата!) задачами по поддержке XFS? Сколько из них захотят этим заниматься хотя бы в теории? Сколько из них захотят заниматься этим вместо своей текущей, наверняка и так высокооплачиваемой, работы? Если у тебя есть хотя бы примерные ответы на все эти вопросы, то советую сразу подаваться в HR отдел того же Oracle 🙂 Денег заработаешь - ого-го сколько!!

ThePlayerZero    
★★
Android / Chrome
Ответ на: комментарий от metalbeaver

Надо просто денег предложить выше рынка.

Универсальный, блять, рецепт! На нишевые вакансии людей месяцами или даже годами ищут.. Вот умер очередной COBOL программист, поддерживающий древнючее окаменелое мамонта го банковский софт. Попробуй найди ему замену!

IT-рынок настолько многогранен.. Не, там конечно есть и армии js-макак, и стада python-вкатунов – так сказать на другом конце от COBOL спектра, по массовости и «шаблонности» специалистов

ThePlayerZero    
★★
Android / Chrome
Ответ на: комментарий от ThePlayerZero

Гугл говорит, что средняя зарплата кобол-программиста 84 тыс в год. Конечно туда никто не пойдёт в это говно за эти деньги вкатываться, когда хипстеры на модном котлине поднимают больше.

metalbeaver    
★★★★★★
iPhone / Safari
Ответ на: комментарий от metalbeaver

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

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

metalbeaver    
★★★★★★
Windows / Chrome
Ответ на: комментарий от metalbeaver

Проблема - в нехватке денег

Так тонко, аж толсто.

odalist    
★★★★★★★
FreeBSD / Firefox
Ответ на: комментарий от crypt

Сопровождальщик, скорее. Написали там всё давным-давно нормальные инженеры, а не смузи-девочки из IT

Kaschenko    
★★★★★★
Android / Yandex
Ответ на: комментарий от Kaschenko

роль разработчика, рецензировщика, тестировщика, релиз-менеджера и контактного лица

crypt    
★★★☆☆
FreeBSD / Chrome
Ответ на: комментарий от Kaschenko

были изменения, я слежу в новостях, плюс адаптация к ядрам - это немалая работа.

crypt    
★★★☆☆
FreeBSD / Chrome
Ответ на: комментарий от crypt

Не, я не спорю, немалая

Почему венда тупо работает, а тут надо ФАЙЛОВУЮ СИСТЕМУ под ядро патичить?

Kaschenko    
★★★★★★
Последнее исправление: Kaschenko (всего исправлений: 1)

Android / Yandex
Ответ на: комментарий от Kaschenko

так винду тоже патчат, просто это все за закрытыми дверями. я уж не говорю про апдейты, которые именно бинарными патчами приходят:)

покупай редхат и пользуйся стоком. XFS тоже будет просто работать.

у винды за счет юзербазы гораздо шире тестирование) с этим спорить нельзя)

crypt    
★★★☆☆
Последнее исправление: crypt (всего исправлений: 3)

FreeBSD / Chrome
Ответ на: комментарий от crypt

У венды стабильное API и даже ABI, и стрононние драйвера там работают по десятку лет, а прикладной софт по 3 десятка. Без шуток, у меня есть прога 95-го года, которой нет аналогов, и я её пускаю нативно на 11-ой венде.

И никто там не патчит NTFS под дистрибутивы)

Kaschenko    
★★★★★★
Android / Yandex
Ответ на: комментарий от Kaschenko

API и ABI может быть между разными компонентами. сорри, мне слишком скучно обсуждать тех.детали. я начинаю зевать и впадаю в прострацию прямо за клавой.

crypt    
★★★☆☆
FreeBSD / Chrome
Ответ на: комментарий от crypt

Может, и даже есть, и в линуксе всё очень плохо всегда в этом плане.

Я тож зевнул и уебался подушку давить. Спокойной

Kaschenko    
★★★★★★
Android / Yandex
Ответ на: комментарий от Kaschenko

зевнул и уебался в подушку

как все просто у тебя…

crypt    
★★★☆☆
FreeBSD / Chrome
Ответ на: комментарий от ThePlayerZero

В оригинальном сообщении Darrick Wong нет ни слова про деньги,

Если бы ему донатили то он мог бы часть работы переложить на нанятых людей и как следствие может и не выгорел.

torvn77    
★★★
Последнее исправление: torvn77 (всего исправлений: 1)

Linux / Chrome
Ответ на: комментарий от ThePlayerZero

Это нехватка кадровых ресурсов, написано же.

Которая есть следствие нехватки денег, не на всё энтузиастов хватает.

torvn77    
★★★
Linux / Chrome
Ответ на: комментарий от ThePlayerZero

Сколько из них способны справляться с этими nightmare

Если есть деньги то можно переложить часть нагрузки на наёмных работников и более менее вменяемой головой подумать о о правильной архитектуре, благодаря чему количество всякого nightmare будет существенно уменьшено.

torvn77    
★★★
Linux / Chrome
Ответ на: комментарий от crypt

и контактного лица

Вот сюда нельзя кого попало пускать, потому как отфутболивание по инструкции приведёт к пропуску багов и глюков.

torvn77    
★★★
Linux / Chrome
Ответ на: комментарий от Kaschenko

Почему венда тупо работает, а тут надо ФАЙЛОВУЮ СИСТЕМУ под ядро патичить?

Потому что в Винде один артефакт древности - NTFS и все деньги пробухиваются на создание формочек графического интерфейса.

torvn77    
★★★
Linux / Chrome
Ответ на: комментарий от Kaschenko

И никто там не патчит NTFS под дистрибутивы)

CoW в NTFS привезли?
А настройки дупликации данных и метаданных?
Включение сквозной компрессии к потере 50% производительности компьютера больше не приводит?

torvn77    
★★★
Linux / Chrome
Ответ на: комментарий от torvn77

Зато тут 30 разных, автор одной сидит, вторая данные теряет, остальные 27 поддерживать некому, вот и остается ext4

Kaschenko    
★★★★★★
Android / Yandex
Ответ на: комментарий от Kaschenko

Кащенко, не распространяй многократно опровергнутые мифы о ущербности линуксовых ФС.

torvn77    
★★★
Android / Chrome
Ответ на: комментарий от Meyer

ну ща IBM/редхат кому-нибудь ставку проплатит. вообще странно, что раньше они не держали своих 10 инженеров. для них это основная фс.

ну это, если они не хотят все уступить ораклу, конечно.

crypt    
★★★☆☆
Последнее исправление: crypt (всего исправлений: 1)

FreeBSD / Chrome
Ответ на: комментарий от crypt

вообще странно, что раньше они не держали своих 10 инженеров. для них это основная фс.

Видимо их все устраивало. Оптимизация расходов же: мало того что один пахал за десятерых, так еще и оракл ему за это платил вместо них.

Meyer    
★★★★★★
Ubuntu / Firefox
Ответ на: комментарий от Meyer

я не думал, что они могут быть такими жмотами. может, у них все-таки свой внутренний штат инженеров XFS еще есть?

crypt    
★★★☆☆
Последнее исправление: crypt (всего исправлений: 1)

FreeBSD / Chrome
Ответ на: комментарий от crypt

покупай редхат и пользуйся стоком. XFS тоже будет просто работать.

А можно просто использовать No-cost RHEL for developers subscription.

odalist    
★★★★★★★
FreeBSD / Firefox
Ответ на: комментарий от Kaschenko

и стрононние драйвера там работают по десятку лет

Потому, что их пишут под Винду.

odalist    
★★★★★★★
FreeBSD / Firefox
Ответ на: комментарий от crypt

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

sambo    
★★
Linux / Chrome
Ответ на: комментарий от odalist

Потому, что их пишут под Винду

А драйвера под линукс пишут под линукс, это вроде логично. У товарища какой-то амуде типа атлон 2 и мать с чипсетом nvidia, этому говну 15 лет минимум, если не все 20. И последняя десятка, и вероятно, одиннадцатая (не проверял), на этой доисторической говновстройке в MCP работают корректно с полной поддержкой аппаратного ускорения, драйвера ставятся и работают.

В линуксе, если драйвер прекратят поддерживать, он отвалится через несколько месяцевза счёт торвальдского stable ABI is nonsense

Kaschenko    
★★★★★★
Android / Yandex
Ответ на: комментарий от Kaschenko

за счёт торвальдского stable ABI is nonsense

Ну так-то на это болезненное решение есть объективные технические причины, главная из которых - куча поддерживаемых аппаратных платформ со своими нетакусиковыми размерами стандартных типов данных.

alexferman    
★★★★★
Linux / Firefox
Ответ на: комментарий от alexferman

Я не уверен что это как-то влияет, и ради их поддержки нет нужды каждые пару месяцев что-то ломать, тем более что ABI для каждой платформы своё, да и их осталось-то 3 штуки, x86, arm и mips

Kaschenko    
★★★★★★
Android / Yandex
Ответ на: комментарий от Kaschenko
Это написано, чтобы попытаться объяснить, почему Linux ** не имеет двоичного
интерфейс ядра, и при этом он не имеет стабильного интерфейса ядра**.

.. примечание::

  Обратите внимание, что эта статья описывает интерфейсы **в ядре**, а не
  ядро к интерфейсам пользовательского пространства.

  Интерфейс ядра к пользовательскому пространству — это тот, который используют прикладные программы,
  интерфейс системного вызова. Этот интерфейс **очень** стабилен с течением времени, и
  не сломается. У меня есть старые программы, которые были построены на чем-то до 0.9.
  ядра, которые по-прежнему прекрасно работают с последней версией ядра 2.6.
  Этот интерфейс — тот, на который могут рассчитывать пользователи и разработчики приложений.
  на стабильность.


...


Бинарный интерфейс ядра
-----------------------
Предполагая, что у нас есть стабильный исходный интерфейс ядра для ядра,
двоичный интерфейс, естественно, тоже произойдет, верно? Неправильный. Пожалуйста
рассмотрим следующие факты о ядре Linux:

  - В зависимости от версии используемого вами компилятора C, разные ядра
    структуры данных будут содержать различное выравнивание структур, и
    возможно включать разные функции по-разному (помещая
    встроенные функции или нет.) Индивидуальная организация функций
    не так важно, но другое заполнение структуры данных
    очень важно.

  - В зависимости от того, какие варианты сборки ядра вы выберете,
    ядро может принимать разные вещи:

      - разные структуры могут содержать разные поля
      - Некоторые функции могут быть вообще не реализованы (т.е. некоторые блокировки
	компилируется в ничто для не-SMP-сборок.)
      - Память внутри ядра можно выравнивать по-разному,
	в зависимости от вариантов сборки.

  - Linux работает на самых разных процессорных архитектурах.
    Невозможно, чтобы бинарные драйверы из одной архитектуры работали
    на другой архитектуре правильно.

Теперь ряд этих проблем можно решить, просто скомпилировав
модуль для точной конкретной конфигурации ядра, используя точно такой же
Компилятор C, с помощью которого было собрано ядро. Этого достаточно, если вы
хотите предоставить модуль для конкретной версии выпуска определенного
дистрибутив линукс. Но умножьте эту единственную сборку на количество
различные дистрибутивы Linux и количество различных поддерживаемых
релизы дистрибутива Linux, и вам быстро снится кошмар
разные варианты сборки на разных релизах. Также осознайте, что каждый
Выпуск дистрибутива Linux содержит несколько различных ядер, все
настроены на разные типы оборудования (разные типы процессоров и
разные варианты), так что даже для одного релиза вам нужно будет создать
несколько версий вашего модуля.

Поверьте, вы со временем сойдете с ума, если будете пытаться поддерживать такого рода
выпуска, я узнал это на собственном горьком опыте давным-давно...


Стабильные исходные интерфейсы ядра
-------------------------------

Это гораздо более «изменчивая» тема, если вы разговариваете с людьми, которые пытаются
сохранить драйвер ядра Linux, которого нет в основном дереве ядра, до
дата со временем.

Разработка ядра Linux ведется непрерывно и в быстром темпе, никогда
останавливаясь, чтобы замедлиться. Таким образом, разработчики ядра находят ошибки в
текущие интерфейсы или найти лучший способ сделать что-то. Если они это сделают
затем они исправляют текущие интерфейсы, чтобы они работали лучше. Когда они делают
поэтому имена функций могут меняться, структуры могут увеличиваться или уменьшаться, и
параметры функции могут быть переработаны. Если это произойдет, все
случаи использования этого интерфейса в ядре исправлены
в то же время, гарантируя, что все продолжает работать должным образом.

В качестве конкретных примеров этого можно привести встроенные в ядро ​​USB-интерфейсы.
претерпел не менее трех различных переделок за время существования этого
подсистема. Эти переделки были сделаны для решения ряда различных
проблемы:

  - Переход от синхронной модели потоков данных к асинхронной
    один. Это уменьшило сложность ряда драйверов и
    увеличили пропускную способность всех USB-драйверов, так что теперь мы
    почти все USB-устройства работают на максимально возможной скорости.
  - Внесено изменение в способ распределения пакетов данных из
    USB-ядро с помощью USB-драйверов, так что теперь все драйверы, необходимые для обеспечения
    больше информации к ядру USB, чтобы исправить ряд задокументированных
    тупики.

Это резко контрастирует с рядом операционных систем с закрытым исходным кодом.
которым со временем пришлось поддерживать свои старые USB-интерфейсы. Этот
предоставляет возможность новым разработчикам случайно использовать старый
интерфейсы и делать что-то неправильным образом, что приводит к нестабильности
операционная система страдает.

В обоих этих случаях все разработчики согласились, что это
важные изменения, которые необходимо было сделать, и они были сделаны, с
относительно небольшая боль. Если бы Linux нужно было гарантировать, что он сохранит
стабильный исходный интерфейс, новый интерфейс был бы создан, и
более старый, сломанный, пришлось бы обслуживать с течением времени, что привело
к дополнительной работе для разработчиков USB. Поскольку все разработчики Linux USB делают
свою работу в свободное время, прося программистов делать дополнительную работу бесплатно
получить, бесплатно, не представляется возможным.

Вопросы безопасности также очень важны для Linux. Когда
проблема с безопасностью найдена, она устранена за очень короткое время. А
несколько раз это приводило к тому, что внутренние интерфейсы ядра
переработано, чтобы предотвратить возникновение проблемы безопасности. Когда это
случается так, что все драйверы, использующие интерфейсы, также были исправлены в
в то же время, гарантируя, что проблема безопасности была устранена и не могла
случайно вернуться в будущем. Если внутренние интерфейсы
не разрешалось изменять, исправляя такого рода проблемы с безопасностью и
гарантировать, что это не повторится, невозможно.

Интерфейсы ядра очищаются с течением времени. Если никто не пользуется
текущий интерфейс, он удален. Это гарантирует, что ядро ​​останется
как можно меньше, и что все потенциальные интерфейсы тестируются как
насколько это возможно (неиспользуемые интерфейсы почти невозможно
тест на достоверность)
alexferman    
★★★★★
Linux / Firefox
Ограничение на отправку комментариев: только для зарегистрированных пользователей, score>=90