[make-initrd] bootchain+altboot: у меня есть план

Alexey Gladkov gladkov.alexey at gmail.com
Mon Aug 30 21:13:07 MSK 2021


On Mon, Aug 30, 2021 at 08:14:49PM +0300, Leonid Krivoshein wrote:
> Привет!
> 
> 
> 24.08.2021 4:16, Leonid Krivoshein пишет:
> > 
> > 23.08.2021 14:48, Alexey Gladkov пишет:
> > > On Mon, Aug 23, 2021 at 02:04:06PM +0300, Leonid Krivoshein wrote:
> > > > > [...]
> > > > > Не стоит ли сделать поддержку netconsole глобальной ?
> 
> Полагаю, глобальной должна быть опция nottys и организация захвата и
> освобождения TTY'ов разными фичами. Тогда и вопрос расшаривания консоли
> решается проще.

Я не очень понял про захват tty в том смысле, что ты предлагаешь ?

> > > > С этой netconsole наловил кучу дистрибутивных багов, не связанных с
> > > > make-initrd. Не все умеют с ней работать, даже grub работает лишь в
> > > > определённых условиях, в зависимости от образа. Нужно сначала
> > > > понять, то ли
> > > > я вообще сделал, что требовалось? Мне не удалось найти надёжного
> > > > способа
> > > > автоматического определения netconsole, поэтому пришлось ввести
> > > > ещё один
> > > > параметр nottys. Но вообще реализация получилась очень простой
> > > > и, на первый
> > > > взгляд, рабочей, и даже код определения размеров консоли
> > > > пришёлся кстати.
> > > > :-)
> > > Надо будет посмотреть на этот код. Очень интересно.
> > 
> > #283645 -- так быстрее. И... sorry for my English! ))
> > 
> 
> Допустил в README опечатку в конце. Но лучше этот код немного доделать. В
> исходной реализации не было разделения процесса на две части, перевода на
> передний план. Просто запрашивалась активация и выводились виджеты. В
> последней реализации, которую пришлось существенно пересмотреть, всё сделано
> для того, чтобы диалоги не мелькали лишний раз без надобности, чтобы их
> вывод не смешивался с выводом на tty1 от демонов, который организует
> make-initrd.
> 
> Особенно при использовании nottys и rdshell хорошо заметно, как на
> единственной текущей консоли дерутся за ввод и вывод rdshell, виджеты и
> вывод от демонов. Возможно тут не хватает блокировок.

rdshell и вывод на консоль это отдельная сложная задача. На консоль пишут
не только сервисы, но и утилиты, которые про notty и вообще всё это ничего
не знают.

Есть два варианта:

* перенаправить вывод сервисов в лог файлы.
* использовать для их вывода другой tty, но в этом случае будут проблемы с
  serial/net console.
 
> Думаю, будет не сложно добавить альтернативный вариант активации с
> использованием текущей консоли, без разделения процесса через IM_exec().

Я вот этого не понял.

> В нынешнем виде фичу interactive может использовать любая другая фича. Но
> как только станет два "пользователя", эта конструкция перестанет быть
> рабочей. Как лучше воткнуть блокировки, тебе видней. Есть ещё фича kbd, и
> она сбрасывает/перенастраивает консоли. Соответствующий демон должен
> запускаться и полностью отрабатывать до фичи interactive, если попадает в
> initramfs. Не знаю, как это лучше организовать.

А kbd разве нужна для bootchain ?

Для синхронизации с kbd можно поступить как с сетью и сделать сервис
kbd-ready, который можно ставить в зависимости других сервисов.

> > [...]
> > 
> > > > Отлично! Будет смысл согласовать "окно" после финальной проверки всего
> > > > комплекса. Привязка по времени к продуктам на p10 необязательна,
> > > > так как для
> > > > тестирования решения более широкими массами оно должно сначала
> > > > попасть в
> > > > Сизиф и тогда есть шанс наловить больше багов на регулярках. При
> > > > переносе в
> > > > make-initrd мне придётся параллельно удалять это из Сизифа.
> > > Ты предлагаешь растянуть мердж bootchain на несколько релизов
> > > make-initrd?
> > 
> > Наоборот, спрашиваю, как лучше. Тут только ты определяешь...
> > 

Извини, что не ответил раньше. Я подзалип из-за релизе другого проекта.

> Отправил пока всю пачку в Сизиф (#284217), чтобы начать полномасштабное
> тестирование на железе. Тем временем доделываю формализацию и частичную
> автоматизацию тестирования. В корне проекта появились новые скрипты для
> этого и пока только частично написанный testplan. Но я освободился от других
> больших дел, так что в свободное время оставшееся доделаю быстро.

Мне бы не хотелось делать релиз make-initrd (не путать со сборкой пакета в
сизиф) с частично рабочей фичей. Поэтому я предлагаю отладить патчи на
сизифе и тогда я сделаю релиз. В этом случае мы сможем делать сборки и
дорабатывать эту фичу.

Что думаешь ?

-- 
Rgrds, legion



More information about the Make-initrd mailing list