From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.1 (2015-04-28) on sa.local.altlinux.org X-Spam-Level: X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,FREEMAIL_FROM autolearn=ham autolearn_force=no version=3.4.1 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:references:from:message-id:date:user-agent:mime-version :in-reply-to:content-transfer-encoding:content-language; bh=TOT56vdK7YmS1eL9rK8BLY1rESE2FVbx5g9ATCJjtf4=; b=cY/KgFniV+4SHsaysAEeAn7F6EpZLkQA0gnwAs8krgD/rEsvoYwc61qJbM7STEk7W+ iDaL3u5JsrUexx/MvfkWMI/cyo4csQa9Cer7DoHH/k2936gBxBpEaAMZNI/eLmCUl/bl lBb0qP1KZ5FolGHSxNOsxNcGlM77EvEgiLiKeTmovlBvD8dBFiiWdv9rzcHegiFA2SaO 81kqtnB5MI5ta20Y8buRS1WoBawLs0YD2jkHzrV30bZY/YFjmTJdJXyZGHzHs7byVxpc wyC8Qmhk2BBJ1AkeuigH5wX89GT7v+PVvqGwIV0iuU9mYwHst2ww0Avz8U8OqthyGe+D GVgw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding :content-language; bh=TOT56vdK7YmS1eL9rK8BLY1rESE2FVbx5g9ATCJjtf4=; b=LQ7pOXuYtQHQmrvPbUzYJR/TCjikeBtR02UvwmisbcQPYAWcosF2gXYIIweGZYK8O0 GNQUsojXerkTR4sf/KDS0ND6HkW+grTp8f6DWJKMzh647S7qL5RsnwnO0WakPspY5KZs p/XjHuFCrYFAyMU371nk55h4Uo/+zMNw8hYD9FW5UQTPIGKB5Rk0+qUDWewcO/8akM/X f5rO2FjlBvi8+OP6kokVAGGHUSj0y9STnEL5G1GVCbh/iE1upQtDURFZRDE4gc+svuSA U8U+FZu76vDL+mWMcnhlZj+p+CCxErEmVIN4kc5jvVekwxnSez1YKmih0S4ZVCnsNstn cAEw== X-Gm-Message-State: AOAM533tg1puqk+SxKL+UmjLChPu1cy/jdUjAY9eISz/pUnoyc6xnkKn 0y15XAzM31xc7x9ikJ7QV543AMOM4gc= X-Google-Smtp-Source: ABdhPJzTnclJfHEI6pRjc7VWTuTmhdNWROJsjFm5ugQdH4ycBRtT/7fhNALYj9j+nzsfPbd5KuCafg== X-Received: by 2002:a05:6512:5c6:: with SMTP id o6mr2685066lfo.455.1622128251378; Thu, 27 May 2021 08:10:51 -0700 (PDT) To: make-initrd@lists.altlinux.org References: <20210406082842.pg3rejmmnxuxvddf@example.org> <20210407125739.jeenqyplba3v6itn@example.org> <53dd1676-6f7b-9a75-49a9-e970e9440b1c@gmail.com> <20210526181231.54b2bk4n6uyvbq5j@example.org> <20210527083750.6fmrm3ou7jfch6qg@example.org> <20210527135347.s6e5rr7t7ipz6uc3@example.org> From: Leonid Krivoshein Message-ID: <6dd33811-5270-8869-7628-b026d56f23d7@gmail.com> Date: Thu, 27 May 2021 18:10:48 +0300 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.8.0 MIME-Version: 1.0 In-Reply-To: <20210527135347.s6e5rr7t7ipz6uc3@example.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: ru Subject: Re: [make-initrd] Fwd: [#269003] TESTED make-initrd.git=2.14.1-alt1 X-BeenThere: make-initrd@lists.altlinux.org X-Mailman-Version: 2.1.12 Precedence: list Reply-To: make-initrd@lists.altlinux.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 27 May 2021 15:10:56 -0000 Archived-At: List-Archive: 27.05.2021 16:53, Alexey Gladkov пишет: > On Thu, May 27, 2021 at 03:29:50PM +0300, Leonid Krivoshein wrote: > [...] >>> Я лишь могу посмотреть на разные куски кода и покомментировать. >> Это безусловно очень полезно, твои советы особенно ценны для меня, хоть и >> жаль твоего времени, т.к. код пока не финальный. За вчера добил liverw, >> сейчас чиню checksum. Всё же я имел ввиду оценить идею, в целом. Например, >> мне кажется, разделение на суб-фичи для bootchain само напрашивается. Но вот >> стоит ли делить на под-пакеты -- вопрос? > Если это упростит сопровождение, то почему бы нет. Вопрос в том, насколько > будет сложно реализовать суб-фичи. > Глядя на другие проще. И ещё сделал в корне mix-altboot для разработчиков. Он не только смешивает все шаги в один каталог data подобно тому, как это делает make-initrd при создании образа, но и создаёт подкаталог hooks, в котором "склеивает" все пронумерованные хуки, чтобы легче было понять, куда вставлять свой новый код. Ищутся они через git grep use_hooks и будут описаны на ВиКи. >> [...] Могу попробовать ещё раз. > У тебя могло бы быть что-то вроде: > > save_image() { # right > if [ -z "$dstreg" ]; then > dd "of=$to" bs=32k 2>/dev/null > else > cat >"$to" > fi > } > > read_image() { # left > if [ -n "$srcreg" ]; then > pv -n -i 1 -- "$url" > return > fi > > opts="$opts --silent --no-buffer --connect-timeout 5" > opts="$opts --max-redirs 5 --max-filesize $filesize" > > [ "$method" != ftp ] || [ -z "$user" ] || [ -z "$pass" ] || > opts="${opts:+$opts }-u \"$user:$pass\"" > > curl $opts -- "$url" | > pv -n -i 1 -s "$filesize" > } > > { read_image | save_image } 2>&1 | > IM_gauge "[ Downloading image... ]" "$text" Спасибо, попробую. > [...] >>> Зачем ты пытаешься использовать ttyN ? Тебе не хватает /dev/console ? >> Нужно собрать диск с таксом, чтобы было наглядней. Хотя уже скоро соберу >> новый. Сейчас "новый пропагатор" (altboot) вообще как бы "невидим". >> Переключение на tty2 происходит спустя некое время, либо сразу, если там >> есть диалог ввода. Поскольку в большинстве случаев загрузка автоматическая, >> ввода от пользователя не требуется и занимает считанные секунды, создаваемые >> "новым пропагатором" и bootchain консоли tty2 и tty3 бесследно исчезают, не >> создавая лишних мельканий на экране. Ещё красивее с плимутом -- всё >> происходит под "червячком", а вот если tty2 активируется, то отключается ещё >> и rootdelay. > Ааааа ... я забыл про plymouth. Если ты про BUG #40090 , то я тестирую на срезе Сизифа, где make-initrd ещё 2.16.0 без этой баги, но обход уже известен. >>> [...] >> Да я собственно из-за этого фрагмента и написал тебе, переделывал его раз >> 20, но так и не понял. Выше ты пишешь, что да, можно запускать setsid второй >> раз, это и есть как бы второй запуск (первый -- openvt). Если убрать тут >> setsid, результат будет таким же. Если убрать не setsid, а амперсанд в >> конце, тут будет задержка в $selay, чего я никак не мог победить. В обычной >> консоли оно себя так не ведёт. Потому и стоит сейчас if, а вообще >> предполагалось так: setsid activate-interactive-vt $delay безо всяких >> проверок и условий. > Там написано, что форк будет сделан только если просто sedsid отвалится. > "But doesn't fail if shell is not interactive". У тебя он как раз не > интерактивный. Поэтому setsid activate-interactive-vt просто висит. Так вот оно в чём дело! Тогда понятно... Обойдусь одним амперсандом. И, судя по этой реализации setsid, за зомбоками там тоже предлагается самим присматривать. :-) У меня вызов wait уже стоит перед выходом. -- Best regards, Leonid Krivoshein.