[d-kernel] Q: modutils vs module-init-tools

Sergey Vlasov vsu at altlinux.ru
Tue Feb 10 17:34:04 MSK 2004


On Tue, Feb 10, 2004 at 03:51:00PM +0300, Dmitry V. Levin wrote:
> На сегодняшний день существуют 3 принципиально разных подхода к проблеме:
> 
> 1. mu+mit под одной тонкой крышей (как у Федоры, SuSE, Debian).
> Это самый лёгкий в реализации и наиболее неудобный в эксплуатации вариант,
> который производит впечатление временного.  Основное неудобство заключено
> в существенных различиях конфигурирования для mu и mit.
> 
> 2. mu с добавлением функционала из mit (как в /pub/people/ed).
> Этот вариант призван существенно облегчить миграцию на 2.6 для сисадминов
> благодаря полной совместимости с чистым mu.  Требует постоянных затрат на
> поддержание актуального функционала из mit.  Ввиду того, что в mu и так
> наблюдается переизбыток функционала, шансов на то, что этот подход будет
> поддержан другими вендорами, мало, т.е. все затраты на поддержку лягут на
> ALT.
> 
> 3. mit с добавлением функционала из mu (реализации нет).
> Этот вариант призван решить обе задачи, т.е. и облегчить миграцию с 2.4, и
> избавиться от лишнего функционала толстого mu.  Требует постоянных затрат
> на поддержание актуального функционала из mit.  Шансов на то, что этот
> подход будет поддержан другими вендорами, по-моему, больше, но только в
> случае, если будет предложена уже работающая реализация.  Есть опасность
> того, что первая реализация будет плохо работать со всеми ядрами.
> 
> Вариант 1. мне не нравится, делать времянку на несколько лет я бы не хотел.
> 
> Вариант 2. меня устраивает больше, но текущая реализация
> (modutils-2.4.25-alt16) меня не устраивает: вносимые изменения содержат
> явные ляпы (которые мы обсудили 6-го февраля с vsu@), и мне не очевидно,
> что они (изменения) не портят поддержку 2.4.  Думаю, что эту реализацию
> можно довести до ума.  2vsu: когда?

Написал уже второй вариант, который в конечном итоге мне опять не
понравился :)

В 2.6 есть два изменения в обработке имён модулей:

1. В команде alias в исходном имени могут использоваться шаблоны в
стиле shell.

2. В имени модуля в ядре все символы '-' заменяются на '_', при этом
в именах файлов может встречаться и то, и другое.  В mit это
обрабатывается путём замены всех '-' на '_' во всех случаях (в
именах из командной строки и из файла конфигурации).

По поводу п.1, вероятно, особых проблем от использования нового
варианта и для 2.6, и для 2.4 не будет.  Для п.2 я вижу несколько
вариантов решения:

а) Менять алгоритм сравнения имён модулей в зависимости от версии
ядра.  Сохраняется максимальная совместимость с 2.4, но различие в
обработке одного и того же файла конфигурации с разными версиями
ядра выглядит довольно странно.

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

Промежуточные варианты (считать '-' и '_' эквивалентными только в
отдельных командах) вряд ли достойны рассмотрения (скорее всего,
результатом реализации подобных вариантов будут багрепорты по поводу
команд, в которых эта эквивалентность не обрабатывается).  Кстати, в
упомянутом modutils-2.4.25-alt16, похоже, наблюдается именно такая
ситуация с options - может получиться так, что модуль найдётся, а
строка options для него не будет обработана.

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

> Вариант 3. этот вариант теоретически лучше всех, но отсутствие рабочей
> реализации сводит все его преимущества на нет.
> 
> 2ab: Это ведь серьёзная тема, выбор не очевиден, наших ресурсов не хватает,
> может, стоит обсудить в xvendor@?  Возьмёшься?
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 189 bytes
Desc: not available
Url : /pipermail/devel-kernel/attachments/20040210/1e330e1f/attachment.bin


More information about the devel-kernel mailing list