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

Leonid Krivoshein klark.devel at gmail.com
Mon Aug 30 20:14:49 MSK 2021


Привет!


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'ов разными фичами. Тогда и вопрос расшаривания консоли 
решается проще.


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

Допустил в README опечатку в конце. Но лучше этот код немного доделать. 
В исходной реализации не было разделения процесса на две части, перевода 
на передний план. Просто запрашивалась активация и выводились виджеты. В 
последней реализации, которую пришлось существенно пересмотреть, всё 
сделано для того, чтобы диалоги не мелькали лишний раз без надобности, 
чтобы их вывод не смешивался с выводом на tty1 от демонов, который 
организует make-initrd.

Особенно при использовании nottys и rdshell хорошо заметно, как на 
единственной текущей консоли дерутся за ввод и вывод rdshell, виджеты и 
вывод от демонов. Возможно тут не хватает блокировок.

Думаю, будет не сложно добавить альтернативный вариант активации с 
использованием текущей консоли, без разделения процесса через IM_exec().

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


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

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


-- 
Best regards,
Leonid Krivoshein.



More information about the Make-initrd mailing list