Make-initrd development discussion
 help / color / mirror / Atom feed
From: Leonid Krivoshein <klark.devel@gmail.com>
To: make-initrd@lists.altlinux.org
Subject: [make-initrd] Fwd: [#269003] TESTED make-initrd.git=2.14.1-alt1
Date: Mon, 5 Apr 2021 23:33:14 +0300
Message-ID: <b5a8fcf1-6cde-ff72-ba8b-6a5fcf8becbb@gmail.com> (raw)
In-Reply-To: <girar.task.269003.1.1@gyle.mskdc.altlinux.org>

Алексей, привет!


Снова я, и снова про pipelinie. :-)

Очень черновая сборка для обсуждения готова. Она не для того, чтобы её 
апстримить. Образы (любые -- live, altinst, rescue) с этим уже можно 
собирать. Несколько дней бодались с одной проблемой и наконец удалось её 
победить. Но сейчас немного о другом -- мысли и пожелания вокруг pipeline...

1. Фича pipeline делалась на замену пропагатора видимо без учёта 
особенностей его работы. Разница оказалась ощутимой и для бесшовного 
перехода из stage1 в stage2 без необходимости править нынешние профили 
дистрибутивов, приходится идти на компромиссы и ухищрения. Менять stage2 
под pipeline вообще не вариант -- мы даже не знаем, где, когда и что 
выстрелит, и как это тестировать.

2. В интерфейс pipeline не выведена уже реализованная в make-initrd 
возможность работы с /proc/cmdline. Имею ввиду общие параметры, такие 
как lowmem, live или rescue. У каждой фичи -- свои аргументы. Пока не 
удалось побороть эту проблему, мой "config" оказался нерабочим. Может, 
нужно просто инклюдить какой-то файл?

3. /dev/pipeline/* -- длинные пути в mtab, не только монтируемые 
каталоги, но и устройства. Даже если это имеет право на жизнь в stage1, 
при переходе в stage2 оно должно умереть, как и не секьюрно 
смонтированный /dev/pipeline, куда можно загружать даже ISO'шки. :-) 
Вместо передачи dev и каталогов можно передавать симлинки на них (в 
дополнение), да и сам devname вместо dev передавать куда правильней, 
по-моему.

4. Сделать замену пропагатора одним большим монолитным куском в рамках 
pipeline нельзя. Как сейчас -- гармоничнее и можно чередовать куски из 
"пропагаторного стека" с нативными. Но есть проблемы [1] и [2]. 
Пропагатор монтирует всё внахлёст в /image, /root и /dev/ramN, при это 
он ещё отмонтирует и много чего другого делает, что не вписывается в 
парадигму pipeline.

5. Исходная идея pipeline -- организовать цепочку с входом и выходом у 
каждого элемента. А как быть в ситуациях, когда ты заказал дождаться 4х 
устройств? Выход ведь будет только у одного. Если именовать всю 
pipeline, сделать таких цепочек несколько и в каждой сделать свой 
waitpipe, можно строить более сложную логику загрузки их разных 
устройств и типов источников, синхронизируя события в других цепочках.

6. Я бы облегчил возможность определение одной pipeline
с: pipeline=waitdev,mountfs,mountfs,rootfs waitdev=/dev/name mounfs=ISO 
mountfs=squash
до: pipeline=waitdev=/dev/name,mountfs=ISO,mountfs=squash,rootfs
т.е.: pipeline=step1[=arg1[:arg2...]][,step2[=arg1[:arg2...]]...] и 
регистрировал бы их автоматически.
Возможно, это также поможет решить проблему [2].

7. Интерактивный ввод-вывод на этапе работы pipelined невозможен, разве 
что перенаправить ограниченный код в /dev/console. У пропагатора по ходу 
это было востребовано, что логично. Ну, хотя бы индикация загрузки 
больших образов, запрос режимов и источников загрузки. Хотелось бы во 
время работы шага прервать "фоновое" выполнение и перейти в интерактив, 
потом вернуться обратно.


В целом, хотелось услышать твоё мнение, чего с этим делать дальше? 
Строить ли рядышком с готовыми кусками шаги пропагаторного стека, как 
сейчас в черновом варианте, делать замену пропагатора отдельной фичей 
make-initrd или дождёшься (разрешишь) когда я перелопачу pipeline под 
новый лад и чуть больше адаптирую под пропагатор?




-------- Перенаправленное сообщение --------
Тема: 	[#269003] TESTED make-initrd.git=2.14.1-alt1
Дата: 	Mon, 5 Apr 2021 18:07:38 +0000
От: 	Girar awaiter (klark) <girar-builder@altlinux.org>
Отвечать: 	klark@altlinux.org
Кому: 	Leonid Krivoshein <klark@altlinux.org>
Копия: 	Alexey Gladkov <legion@altlinux.org>, 
girar-builder-sisyphus@altlinux.org, sisyphus-incominger@lists.altlinux.org



http://git.altlinux.org/tasks/269003/logs/events.1.1.log

subtask name aarch64 armh i586 ppc64le x86_64
#100 make-initrd 1:08 1:31 1:07 1:22 1:05

2021-Apr-05 18:00:48 :: test-only task #269003 for sisyphus started by 
klark:
#100 build 2.14.1-alt1 from /people/klark/packages/make-initrd.git 
fetched at 2021-Apr-05 18:00:47
2021-Apr-05 18:00:50 :: [x86_64] #100 make-initrd.git 2.14.1-alt1: build 
start
2021-Apr-05 18:00:50 :: [armh] #100 make-initrd.git 2.14.1-alt1: build start
2021-Apr-05 18:00:50 :: [aarch64] #100 make-initrd.git 2.14.1-alt1: 
build start
2021-Apr-05 18:00:50 :: [i586] #100 make-initrd.git 2.14.1-alt1: build start
2021-Apr-05 18:00:50 :: [ppc64le] #100 make-initrd.git 2.14.1-alt1: 
build start
2021-Apr-05 18:01:55 :: [x86_64] #100 make-initrd.git 2.14.1-alt1: build OK
2021-Apr-05 18:01:57 :: [i586] #100 make-initrd.git 2.14.1-alt1: build OK
2021-Apr-05 18:01:58 :: [aarch64] #100 make-initrd.git 2.14.1-alt1: build OK
2021-Apr-05 18:02:12 :: [ppc64le] #100 make-initrd.git 2.14.1-alt1: build OK
2021-Apr-05 18:02:21 :: [armh] #100 make-initrd.git 2.14.1-alt1: build OK
2021-Apr-05 18:03:05 :: #100: make-initrd.git 2.14.1-alt1: build check OK
2021-Apr-05 18:03:05 :: build check OK
warning (#100): make-initrd-devmapper-2.14.1-alt1.x86_64.rpm should be 
.noarch.rpm
warning (#100): make-initrd-luks-2.14.1-alt1.x86_64.rpm should be 
.noarch.rpm
warning (#100): make-initrd-lvm-2.14.1-alt1.x86_64.rpm should be .noarch.rpm
warning (#100): make-initrd-mdadm-2.14.1-alt1.x86_64.rpm should be 
.noarch.rpm
warning (#100): make-initrd-multipath-2.14.1-alt1.x86_64.rpm should be 
.noarch.rpm
warning (#100): make-initrd-nfs-2.14.1-alt1.x86_64.rpm should be .noarch.rpm
warning (#100): make-initrd-plymouth-2.14.1-alt1.x86_64.rpm should be 
.noarch.rpm
2021-Apr-05 18:03:15 :: noarch check OK
2021-Apr-05 18:03:17 :: plan: src +1 -1 =17879, aarch64 +9 -9 =29722, 
armh +9 -9 =27791, i586 +10 -10 =30615, ppc64le +9 -9 =29607, x86_64 +10 
-10 =31101
#100 make-initrd 2.14.0-alt1 -> 2.14.1-alt1
Sun Apr 04 2021 Leonid Krivoshein <klark@altlinux> 2.14.1-alt1
- Feature pipeline: introduce propagator compatibity layer. WIP!
2021-Apr-05 18:03:53 :: patched apt indices
2021-Apr-05 18:04:02 :: created next repo
2021-Apr-05 18:04:11 :: duplicate provides check OK
2021-Apr-05 18:04:36 :: dependencies check OK
2021-Apr-05 18:04:58 :: [x86_64 i586 aarch64 ppc64le armh] ELF symbols 
check OK
warning [i586]: make-initrd=2.14.1-alt1: circular dependencies on 
bootloader-utils=0.5.3-alt1
warning [x86_64]: make-initrd=2.14.1-alt1: circular dependencies on 
bootloader-utils=0.5.3-alt1
2021-Apr-05 18:05:13 :: [i586] #100 make-initrd: install check OK
2021-Apr-05 18:05:14 :: [x86_64] #100 make-initrd: install check OK
warning [aarch64]: make-initrd=2.14.1-alt1: circular dependencies on 
bootloader-utils=0.5.3-alt1
2021-Apr-05 18:05:15 :: [aarch64] #100 make-initrd: install check OK
warning [ppc64le]: make-initrd=2.14.1-alt1: circular dependencies on 
bootloader-utils=0.5.3-alt1
2021-Apr-05 18:05:18 :: [ppc64le] #100 make-initrd: install check OK
2021-Apr-05 18:05:21 :: [x86_64] #100 make-initrd-debuginfo: install 
check OK
2021-Apr-05 18:05:21 :: [i586] #100 make-initrd-debuginfo: install check OK
warning [armh]: make-initrd=2.14.1-alt1: circular dependencies on 
bootloader-utils=0.5.3-alt1
2021-Apr-05 18:05:24 :: [aarch64] #100 make-initrd-debuginfo: install 
check OK
2021-Apr-05 18:05:24 :: [armh] #100 make-initrd: install check OK
2021-Apr-05 18:05:28 :: [x86_64] #100 make-initrd-devmapper: install 
check OK
2021-Apr-05 18:05:28 :: [i586] #100 make-initrd-devmapper: install check OK
2021-Apr-05 18:05:29 :: [ppc64le] #100 make-initrd-debuginfo: install 
check OK
2021-Apr-05 18:05:31 :: [aarch64] #100 make-initrd-devmapper: install 
check OK
2021-Apr-05 18:05:34 :: [x86_64] #100 make-initrd-luks: install check OK
2021-Apr-05 18:05:35 :: [i586] #100 make-initrd-luks: install check OK
2021-Apr-05 18:05:38 :: [armh] #100 make-initrd-debuginfo: install check OK
2021-Apr-05 18:05:38 :: [aarch64] #100 make-initrd-luks: install check OK
2021-Apr-05 18:05:38 :: [ppc64le] #100 make-initrd-devmapper: install 
check OK
2021-Apr-05 18:05:41 :: [x86_64] #100 make-initrd-lvm: install check OK
2021-Apr-05 18:05:42 :: [i586] #100 make-initrd-lvm: install check OK
2021-Apr-05 18:05:46 :: [aarch64] #100 make-initrd-lvm: install check OK
2021-Apr-05 18:05:47 :: [x86_64] #100 make-initrd-mdadm: install check OK
2021-Apr-05 18:05:47 :: [ppc64le] #100 make-initrd-luks: install check OK
2021-Apr-05 18:05:48 :: [i586] #100 make-initrd-mdadm: install check OK
2021-Apr-05 18:05:50 :: [armh] #100 make-initrd-devmapper: install check OK
2021-Apr-05 18:05:53 :: [aarch64] #100 make-initrd-mdadm: install check OK
2021-Apr-05 18:05:53 :: [x86_64] #100 make-initrd-multipath: install 
check OK
2021-Apr-05 18:05:55 :: [i586] #100 make-initrd-multipath: install check OK
2021-Apr-05 18:05:57 :: [ppc64le] #100 make-initrd-lvm: install check OK
x86_64: make-initrd-nfs=2.14.1-alt1 post-install unowned files:
/usr/share/make-initrd
/usr/share/make-initrd/features
2021-Apr-05 18:05:58 :: [x86_64] #100 make-initrd-nfs: install check OK
i586: make-initrd-nfs=2.14.1-alt1 post-install unowned files:
/usr/share/make-initrd
/usr/share/make-initrd/features
2021-Apr-05 18:05:59 :: [i586] #100 make-initrd-nfs: install check OK
2021-Apr-05 18:06:00 :: [aarch64] #100 make-initrd-multipath: install 
check OK
2021-Apr-05 18:06:02 :: [armh] #100 make-initrd-luks: install check OK
aarch64: make-initrd-nfs=2.14.1-alt1 post-install unowned files:
/usr/share/make-initrd
/usr/share/make-initrd/features
2021-Apr-05 18:06:05 :: [aarch64] #100 make-initrd-nfs: install check OK
2021-Apr-05 18:06:06 :: [ppc64le] #100 make-initrd-mdadm: install check OK
2021-Apr-05 18:06:07 :: [x86_64] #100 make-initrd-plymouth: install check OK
2021-Apr-05 18:06:10 :: [i586] #100 make-initrd-plymouth: install check OK
2021-Apr-05 18:06:14 :: [armh] #100 make-initrd-lvm: install check OK
2021-Apr-05 18:06:15 :: [aarch64] #100 make-initrd-plymouth: install 
check OK
2021-Apr-05 18:06:15 :: [ppc64le] #100 make-initrd-multipath: install 
check OK
ppc64le: make-initrd-nfs=2.14.1-alt1 post-install unowned files:
/usr/share/make-initrd
/usr/share/make-initrd/features
2021-Apr-05 18:06:21 :: [ppc64le] #100 make-initrd-nfs: install check OK
2021-Apr-05 18:06:24 :: [x86_64] #100 make-initrd-ucode: install check OK
2021-Apr-05 18:06:25 :: [armh] #100 make-initrd-mdadm: install check OK
2021-Apr-05 18:06:28 :: [i586] #100 make-initrd-ucode: install check OK
2021-Apr-05 18:06:35 :: [ppc64le] #100 make-initrd-plymouth: install 
check OK
2021-Apr-05 18:06:37 :: [armh] #100 make-initrd-multipath: install check OK
armh: make-initrd-nfs=2.14.1-alt1 post-install unowned files:
/usr/share/make-initrd
/usr/share/make-initrd/features
2021-Apr-05 18:06:44 :: [armh] #100 make-initrd-nfs: install check OK
2021-Apr-05 18:07:00 :: [armh] #100 make-initrd-plymouth: install check OK
2021-Apr-05 18:07:13 :: [x86_64-i586] generated apt indices
2021-Apr-05 18:07:13 :: [x86_64-i586] created next repo
2021-Apr-05 18:07:20 :: [x86_64-i586] dependencies check OK
2021-Apr-05 18:07:20 :: gears inheritance check OK
2021-Apr-05 18:07:20 :: srpm inheritance check OK
girar-check-perms: access to make-initrd DENIED for klark: does not 
belong to approved builders list: legion check-subtask-perms: #100: 
make-initrd: Operation not permitted
2021-Apr-05 18:07:20 :: acl check IGNORED
2021-Apr-05 18:07:27 :: created contents_index files
2021-Apr-05 18:07:35 :: created hash files: aarch64 armh i586 ppc64le 
src x86_64
2021-Apr-05 18:07:38 :: task #269003 for sisyphus TESTED



       reply	other threads:[~2021-04-05 20:33 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-04-05 20:33 ` Leonid Krivoshein [this message]
2021-04-05 22:51   ` Leonid Krivoshein
2021-04-06  8:44     ` Alexey Gladkov
2021-04-06 17:38       ` Leonid Krivoshein
2021-04-07 13:13         ` Alexey Gladkov
2021-04-06  8:28   ` Alexey Gladkov
2021-04-06 16:38     ` Leonid Krivoshein
2021-04-06 19:05       ` Alexey Gladkov
2021-04-06 19:30         ` Alexey Gladkov
2021-04-06 23:13           ` Leonid Krivoshein
2021-04-07 12:28             ` Alexey Gladkov
2021-04-06 23:00         ` Leonid Krivoshein
2021-04-07 12:11           ` Alexey Gladkov
2021-04-06 23:59         ` Leonid Krivoshein
2021-04-07  1:51     ` Leonid Krivoshein
2021-04-07 12:57       ` Alexey Gladkov
2021-04-07 18:29         ` Leonid Krivoshein
2021-05-26 15:05         ` Leonid Krivoshein
2021-05-26 18:12           ` Alexey Gladkov
2021-05-26 19:25             ` Leonid Krivoshein
2021-05-27  8:37               ` Alexey Gladkov
2021-05-27 12:29                 ` Leonid Krivoshein
2021-05-27 13:53                   ` Alexey Gladkov
2021-05-27 15:10                     ` Leonid Krivoshein
2021-05-27 17:04                       ` Alexey Gladkov
2021-05-27 17:11                         ` Leonid Krivoshein
2021-05-30 20:34                     ` Leonid Krivoshein

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=b5a8fcf1-6cde-ff72-ba8b-6a5fcf8becbb@gmail.com \
    --to=klark.devel@gmail.com \
    --cc=make-initrd@lists.altlinux.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

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