* [make-initrd] Update
@ 2019-06-14 8:12 Alexey Gladkov
2019-06-14 9:51 ` Leonid Krivoshein
0 siblings, 1 reply; 10+ messages in thread
From: Alexey Gladkov @ 2019-06-14 8:12 UTC (permalink / raw)
To: make-initrd
Привет!
Я тут переписал ueventd от слова совсем и как следствие изменились и
эвенты и их обработка.
ueventd теперь работает немного сложнее:
* Очередей может быть несколько. Их можно создавать и удалять динамически.
* Эвенты в каждой очереди обрабатываются последовательно в блокирующем
режиме т.е. пока текущий обработчик не завершится следующий вызван не
будет.
* Эвенты в разных очередях обрабатываются параллельно.
* Эвенты - это всегда файл с значениями вида 'NAME="VALUE"\n'.
Сервер обрабатывает эвенты используя обработчики. Они могут быть написаны
либо на shell, либо на lua (меня отговорили от schema). Для второго случая
действует правило: один файл => один обработчик. В lua-файле должна быть
функция main, которая будет вызвана для каждого эвента. Обработчики можно
добавлять/удалять динамически.
При вызове обработчика эвенты читаются и передаются через переменные
окружения.
Соответственно, поменялись все обработчики. В фиче network каждый
интерфейс обрабатывается параллельно.
На моих тестах я получил прирост к скорости, но буду благодарен за
дополнительное тестирование.
--
Rgrds, legion
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [make-initrd] Update
2019-06-14 8:12 [make-initrd] Update Alexey Gladkov
@ 2019-06-14 9:51 ` Leonid Krivoshein
2019-06-14 12:29 ` Alexey Gladkov
0 siblings, 1 reply; 10+ messages in thread
From: Leonid Krivoshein @ 2019-06-14 9:51 UTC (permalink / raw)
To: make-initrd
Привет!
14.06.2019 11:12, Alexey Gladkov пишет:
> Привет!
>
> Я тут переписал ueventd от слова совсем и как следствие изменились и
> эвенты и их обработка.
>
> ueventd теперь работает немного сложнее:
>
> * Очередей может быть несколько. Их можно создавать и удалять динамически.
> * Эвенты в каждой очереди обрабатываются последовательно в блокирующем
> режиме т.е. пока текущий обработчик не завершится следующий вызван не
> будет.
> * Эвенты в разных очередях обрабатываются параллельно.
> * Эвенты - это всегда файл с значениями вида 'NAME="VALUE"\n'.
>
> Сервер обрабатывает эвенты используя обработчики. Они могут быть написаны
> либо на shell, либо на lua (меня отговорили от schema). Для второго случая
> действует правило: один файл => один обработчик. В lua-файле должна быть
> функция main, которая будет вызвана для каждого эвента. Обработчики можно
> добавлять/удалять динамически.
>
> При вызове обработчика эвенты читаются и передаются через переменные
> окружения.
Если через переменные окружения, значит, эвентам должно быть всё равно,
что в этих файлах и в каком они формате?
> Соответственно, поменялись все обработчики. В фиче network каждый
> интерфейс обрабатывается параллельно.
Больше гонок хороших и разных! :-)
> На моих тестах я получил прирост к скорости, но буду благодарен за
> дополнительное тестирование.
Часть без железа прогоню в эти два выходных -- тогда отпишусь. С железом
на следующей неделе постараюсь, но пока не обещаю.
--
Best regards,
Leonid Krivoshein.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [make-initrd] Update
2019-06-14 9:51 ` Leonid Krivoshein
@ 2019-06-14 12:29 ` Alexey Gladkov
2019-06-14 17:58 ` Leonid Krivoshein
2019-06-15 17:57 ` Leonid Krivoshein
0 siblings, 2 replies; 10+ messages in thread
From: Alexey Gladkov @ 2019-06-14 12:29 UTC (permalink / raw)
To: make-initrd
On Fri, Jun 14, 2019 at 12:51:59PM +0300, Leonid Krivoshein wrote:
> > При вызове обработчика эвенты читаются и передаются через переменные
> > окружения.
>
> Если через переменные окружения, значит, эвентам должно быть всё равно,
> что в этих файлах и в каком они формате?
Эвент-файлы читаются сервером. Так что нет, не всё равно.
>
> > Соответственно, поменялись все обработчики. В фиче network каждый
> > интерфейс обрабатывается параллельно.
>
> Больше гонок хороших и разных! :-)
Я это переписывал не потому что могу. Параллельность нужна будет для
будущих шагов. Без этого сложно реализовать обработку некоторых схем
расположения рута.
> > На моих тестах я получил прирост к скорости, но буду благодарен за
> > дополнительное тестирование.
>
> Часть без железа прогоню в эти два выходных -- тогда отпишусь. С железом
> на следующей неделе постараюсь, но пока не обещаю.
Спасибо!
--
Rgrds, legion
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [make-initrd] Update
2019-06-14 12:29 ` Alexey Gladkov
@ 2019-06-14 17:58 ` Leonid Krivoshein
2019-06-16 12:22 ` Alexey Gladkov
2019-06-15 17:57 ` Leonid Krivoshein
1 sibling, 1 reply; 10+ messages in thread
From: Leonid Krivoshein @ 2019-06-14 17:58 UTC (permalink / raw)
To: make-initrd
14.06.2019 15:29, Alexey Gladkov пишет:
> On Fri, Jun 14, 2019 at 12:51:59PM +0300, Leonid Krivoshein wrote:
>>> При вызове обработчика эвенты читаются и передаются через переменные
>>> окружения.
>> Если через переменные окружения, значит, эвентам должно быть всё равно,
>> что в этих файлах и в каком они формате?
> Эвент-файлы читаются сервером. Так что нет, не всё равно.
Просто уточняю для дальнейшего документирования. Здесь видно
противоречие: всё-таки через переменные окружения или надо сами файлы
парсить?
> [...]
>>> На моих тестах я получил прирост к скорости, но буду благодарен за
>>> дополнительное тестирование.
>> Часть без железа прогоню в эти два выходных -- тогда отпишусь. С железом
>> на следующей неделе постараюсь, но пока не обещаю.
> Спасибо!
Мы тестируем то же самое задание или надо собирать из твоего мастера?
--
Best regards,
Leonid Krivoshein.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [make-initrd] Update
2019-06-14 17:58 ` Leonid Krivoshein
@ 2019-06-16 12:22 ` Alexey Gladkov
2019-06-16 17:38 ` Leonid Krivoshein
0 siblings, 1 reply; 10+ messages in thread
From: Alexey Gladkov @ 2019-06-16 12:22 UTC (permalink / raw)
To: make-initrd
On Fri, Jun 14, 2019 at 08:58:11PM +0300, Leonid Krivoshein wrote:
> Просто уточняю для дальнейшего документирования. Здесь видно
> противоречие: всё-таки через переменные окружения или надо сами файлы
> парсить?
Сервер парсит эвент-файл и загружает переменные из него в env хэндлеров.
Этот механизм одинаков как для шелл-скриптов, так и для lua-хэндлеров.
Переменные из эвент-файла будут доступны через env.
> > [...]
> >>> На моих тестах я получил прирост к скорости, но буду благодарен за
> >>> дополнительное тестирование.
> >> Часть без железа прогоню в эти два выходных -- тогда отпишусь. С железом
> >> на следующей неделе постараюсь, но пока не обещаю.
> > Спасибо!
>
> Мы тестируем то же самое задание или надо собирать из твоего мастера?
Моё задание стухло. Нужно собирать из мастера.
--
Rgrds, legion
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [make-initrd] Update
2019-06-14 12:29 ` Alexey Gladkov
2019-06-14 17:58 ` Leonid Krivoshein
@ 2019-06-15 17:57 ` Leonid Krivoshein
2019-06-15 18:42 ` Leonid Krivoshein
1 sibling, 1 reply; 10+ messages in thread
From: Leonid Krivoshein @ 2019-06-15 17:57 UTC (permalink / raw)
To: make-initrd
14.06.2019 15:29, Alexey Gladkov пишет:
> On Fri, Jun 14, 2019 at 12:51:59PM +0300, Leonid Krivoshein wrote:
>
>>> На моих тестах я получил прирост к скорости, но буду благодарен за
>>> дополнительное тестирование.
>> Часть без железа прогоню в эти два выходных -- тогда отпишусь. С железом
>> на следующей неделе постараюсь, но пока не обещаю.
> Спасибо!
Взял старую сизифную вирталку с LXDE, обновил rpm, потом apt, затем
полностью её обновил, собрал локально и в задании #232125 с небольшим
исправлением твой последний мастер, поставил новый make-initrd. Обновил
на ядро un-def и получил полностью незагружаемую систему. Долго висела
именно на Starting ueventd service [FAILED] (с самого начала). Потом
выдала rdshell.
--
Best regards,
Leonid Krivoshein.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [make-initrd] Update
2019-06-15 17:57 ` Leonid Krivoshein
@ 2019-06-15 18:42 ` Leonid Krivoshein
2019-06-17 8:30 ` Alexey Gladkov
2019-06-19 15:50 ` Alexey Gladkov
0 siblings, 2 replies; 10+ messages in thread
From: Leonid Krivoshein @ 2019-06-15 18:42 UTC (permalink / raw)
To: make-initrd
15.06.2019 20:57, Leonid Krivoshein пишет:
> Взял старую сизифную вирталку с LXDE, обновил rpm, потом apt, затем
> полностью её обновил, собрал локально и в задании #232125 с небольшим
> исправлением твой последний мастер, поставил новый make-initrd.
> Обновил на ядро un-def и получил полностью незагружаемую систему.
> Долго висела именно на Starting ueventd service [FAILED] (с самого
> начала). Потом выдала rdshell.
>
Локализовал по-максимуму. Плимут не влияет, un-def тоже не влияет. С
2.2.10 проблем нет. Регрессия именно в 2.2.11 уже на старте ueventd.
Конфиг дефолтный. Сеть специально пока не поднимал. В одном из
rdsheel'ов отхватил такое:
rdshell: The waiting time expired!
setsid: can't execute '-c': No such file or directory
И больше ни слова. Хотелось бы надеяться, что демоны за консоль
подрались, но не оно. :-) В принципе shell есть, можно подебажить.
Загрузка EFI'шная в qemu, если это важно. Могу выгрузить образ initrd,
если надо.
--
Best regards,
Leonid Krivoshein.
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [make-initrd] Update
2019-06-15 18:42 ` Leonid Krivoshein
@ 2019-06-17 8:30 ` Alexey Gladkov
2019-06-19 15:50 ` Alexey Gladkov
1 sibling, 0 replies; 10+ messages in thread
From: Alexey Gladkov @ 2019-06-17 8:30 UTC (permalink / raw)
To: make-initrd
On Sat, Jun 15, 2019 at 09:42:27PM +0300, Leonid Krivoshein wrote:
>
> 15.06.2019 20:57, Leonid Krivoshein пишет:
> > Взял старую сизифную вирталку с LXDE, обновил rpm, потом apt, затем
> > полностью её обновил, собрал локально и в задании #232125 с небольшим
> > исправлением твой последний мастер, поставил новый make-initrd.
> > Обновил на ядро un-def и получил полностью незагружаемую систему.
> > Долго висела именно на Starting ueventd service [FAILED] (с самого
> > начала). Потом выдала rdshell.
> >
>
> Локализовал по-максимуму. Плимут не влияет, un-def тоже не влияет. С
> 2.2.10 проблем нет. Регрессия именно в 2.2.11 уже на старте ueventd.
> Конфиг дефолтный. Сеть специально пока не поднимал. В одном из
> rdsheel'ов отхватил такое:
>
> rdshell: The waiting time expired!
> setsid: can't execute '-c': No such file or directory
>
> И больше ни слова. Хотелось бы надеяться, что демоны за консоль
> подрались, но не оно. :-) В принципе shell есть, можно подебажить.
> Загрузка EFI'шная в qemu, если это важно. Могу выгрузить образ initrd,
> если надо.
Что-то в пакете совсем не так пошло. Попробую всё собрать с нуля у себя.
Я не трогал то место откуда это сообщение появилось.
--
Rgrds, legion
^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [make-initrd] Update
2019-06-15 18:42 ` Leonid Krivoshein
2019-06-17 8:30 ` Alexey Gladkov
@ 2019-06-19 15:50 ` Alexey Gladkov
1 sibling, 0 replies; 10+ messages in thread
From: Alexey Gladkov @ 2019-06-19 15:50 UTC (permalink / raw)
To: make-initrd
On Sat, Jun 15, 2019 at 09:42:27PM +0300, Leonid Krivoshein wrote:
> Локализовал по-максимуму. Плимут не влияет, un-def тоже не влияет. С
> 2.2.10 проблем нет. Регрессия именно в 2.2.11 уже на старте ueventd.
> Конфиг дефолтный. Сеть специально пока не поднимал. В одном из
> rdsheel'ов отхватил такое:
>
> rdshell: The waiting time expired!
> setsid: can't execute '-c': No such file or directory
Собрал себе локальный образ и всё загрузилось на железе на моей машине.
--
Rgrds, legion
^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2019-06-19 15:50 UTC | newest]
Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-06-14 8:12 [make-initrd] Update Alexey Gladkov
2019-06-14 9:51 ` Leonid Krivoshein
2019-06-14 12:29 ` Alexey Gladkov
2019-06-14 17:58 ` Leonid Krivoshein
2019-06-16 12:22 ` Alexey Gladkov
2019-06-16 17:38 ` Leonid Krivoshein
2019-06-15 17:57 ` Leonid Krivoshein
2019-06-15 18:42 ` Leonid Krivoshein
2019-06-17 8:30 ` Alexey Gladkov
2019-06-19 15:50 ` Alexey Gladkov
Make-initrd development discussion
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/make-initrd/0 make-initrd/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 make-initrd make-initrd/ http://lore.altlinux.org/make-initrd \
make-initrd@lists.altlinux.org make-initrd@lists.altlinux.ru make-initrd@lists.altlinux.com
public-inbox-index make-initrd
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.make-initrd
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git