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=20210112; t=1680820035; x=1683412035; h=in-reply-to:content-language:references:to:from:subject:user-agent :mime-version:date:message-id:from:to:cc:subject:date:message-id :reply-to; bh=q8QuOMzPYl8MQ+0OWyx9b26LFFo1YwvMvm29KKkwCoY=; b=phOHqKvCdu/tbhCib8c47aWlN3r7SA1i+AIbODt9+ETE5rET3K30UUh64AntIJkkrq 1Y3qxBgpEh0sXPAOQDT2pFJZcB09YvtWxg9eUVlDOckWBzhTW0tdcAWEq6Jj0jGXbTZE B2dcZA5qAgYizpUmMlHe1XkKsGzdiGWwsaSk422t+yL+PZDfbowlQVa4x+AkEM/qRMmE lDMka0fVemO/sSTm/jlvXnT1BbEridM6KRSanfbysDH4a9nCG1lHyA8P4Ho8Sxyp2fEB fKQw1e0RJpIvpc0cmNLrCZ3XFOlklQD+5xDqgj7ZRfR09CALpyLNEh3eOwCbrc73cGmG 1sZw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1680820035; x=1683412035; h=in-reply-to:content-language:references:to:from:subject:user-agent :mime-version:date:message-id:x-gm-message-state:from:to:cc:subject :date:message-id:reply-to; bh=q8QuOMzPYl8MQ+0OWyx9b26LFFo1YwvMvm29KKkwCoY=; b=JZeQNP49Jyljn7FAdmUhaguNDEFZAJDBP2LUDv7+8W6YOzUG/pVG3ZCGzxM2TvCXhd orelQAUAe8RVvYV18FTQJ7x42L50Li4VBJGSdNKu5popxT/vJxBb2JNKu6ByWFzy3Y7q 8wDVMKNJ+TG4UiJQHFwpvYw8ApGzFuIOVefkVbpxsDBJLbWI6zBtQ2eVGyBZxEmRdRVu gqYGOWggiX/aiPpjhs+voyv10yJraVS3RQSx4eJocqtPeI9H3x4b043jN6B1kz6bJ1cs g3XwCuyAP69vmBM0Tq1LscxgUhD8KY2z9qH3buTa54cceoOI2ksBIJbMHbrD1WT3Jtig XKJg== X-Gm-Message-State: AAQBX9eZKi0rGJNwNPzR6nbbwv08dtXXFnV0sR7pG7mfOE/ho11GX55S +hj5+QeTqjVjQi6rc7rLV2E/sqEogYA= X-Google-Smtp-Source: AKy350Z8KGBm0QUTME0KT0RPzgT4wKeL5OeIOUJIwE+I90G+jR5gS2uMJ0/B3JDCx9h02gBINapffQ== X-Received: by 2002:a9d:4c8:0:b0:68d:3fc8:7c11 with SMTP id 66-20020a9d04c8000000b0068d3fc87c11mr3499533otm.12.1680820034942; Thu, 06 Apr 2023 15:27:14 -0700 (PDT) Content-Type: multipart/mixed; boundary="------------vLt2BM2RUxWDtCZG5jHEP8o3" Message-ID: Date: Fri, 7 Apr 2023 01:27:13 +0300 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Firefox/102.0 Thunderbird/102.9.0 From: Leonid Krivoshein To: make-initrd@lists.altlinux.org References: <7d19288d-96a9-186c-768d-95a09b02c225@basealt.ru> Content-Language: ru, en-US In-Reply-To: Subject: Re: [make-initrd] =?utf-8?b?cG9sbGQg0Lgg0L/RgNC+0LLQtdGA0LrQsCDQvdCw?= =?utf-8?b?0LvQuNGH0LjRjyAvcm9vdC9zYmluL2luaXQ=?= 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, 06 Apr 2023 22:27:18 -0000 Archived-At: List-Archive: This is a multi-part message in MIME format. --------------vLt2BM2RUxWDtCZG5jHEP8o3 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit On 4/6/23 09:00, Leonid Krivoshein wrote: >> Отсюда выводы: >> 1. Факт монтирования корня недостаточное условие, существует >> переходный процесс монтирования > > Насколько я понимаю, у каждой группы процессов может быть собственное > пространство имён монтирования, но описываемое поведение говорит о > том, что polld и chaind находятся в разных пространствах имён и ещё > что-то заставляет перемещать структуры в ядре от одной из групп к > другой. В общем странно и невероятно, потому что по идее, если > пространства разные, они изолированы, а если одинаковые, все процессы > должны увидеть изменения мгновенно. Тем не менее, мы наблюдаем именно > такое поведение, описанное Антоном. Весьма похоже на ядерный рейс, > поскольку на начальном этапе загрузка работой сильная и "мгновенности" > не случается. Сказанное выше больше похоже на тонкую шутку. На самом деле всё может быть проще... Если какой-то внешний процесс по отношению bootchain среагировал на событие, увидев /root/sbin/init или что-то ещё, он же может вызвать telinit 2? Но на шаге squahfs это ещё не было финальным монтированием. В тот же момент bootchain продолжает процесс загрузки в шаге overlayfs, но polld, получив сигнал, уже начинает проверку финального условия. bootchain выполняет telinit 2 только на последнем шаге rootfs, и раз polld начинает обработку раньше, сигнал посылает кто-то ещё и это следует из журнала chaind.log. Возможно, остановка polld на время работы bootchain поможет, я просто не знаю, можно ли это делать. Но я сталкивался с двойной обработкой события на финальном этапе в другом коде при использовании как раз метода загрузки. При написании прототипа отдельной фичи overlayroot (вложил), закрывающей обычный корень на запись, приходится проверять повторный вход в /lib/initrd/boot/scripts/overlayroot. Без это оверлеи монтируются неправильно и система просто не грузится. А откуда возникает второе событие при срабатывании события "корень найден -- пора в stage2"? Раньше я полагал, что его создаёт монтирование overlay. Драка между bootchain и polld может быть не результатом "гонки" в ядре или сторонним вызовом telinit 2, а результатом обработки этого второго события. Но я не так хорошо знаю архитектуру make-initrd. -- WBR, Leonid Krivoshein. --------------vLt2BM2RUxWDtCZG5jHEP8o3 Content-Type: text/plain; charset=UTF-8; name="overlayroot" Content-Disposition: attachment; filename="overlayroot" Content-Transfer-Encoding: base64 IyEvYmluL3NoIC1lZnUKCi4gc2hlbGwtZXJyb3IKCk9WRVJMQVk9IiR7MTotdG1wZnN9IgpC QVNFPS91c3Ivc2hhcmUvbWFrZS1pbml0cmQvZGF0YQoKY2FzZSAiJE9WRVJMQVkiIGluCi1p fC0taW5zdGFsbCkKCU9WRVJMQVk9IiR7MjotdG1wZnN9IgoJOzsKCi11fC0tdW5pbnN0YWxs KQoJWyAtZCAiJEJBU0UvbGliL2luaXRyZC9ib290L3NjcmlwdHMiIF0gfHwKCQlmYXRhbCAi bWFrZS1pbml0cmQgaXMgbm90IGluc3RhbGxlZC4iCglbIC14ICIkQkFTRS9saWIvaW5pdHJk L2Jvb3Qvc2NyaXB0cy8kUFJPRyIgXSB8fAoJCWZhdGFsICJUaGUgJFBST0cgZmVhdHVyZSBp cyBub3QgaW5zdGFsbGVkLiIKCXNlZCAtaSAtRSAiL1wuXC8kUFJPRy9kIiAiJEJBU0UiL2xp Yi9pbml0cmQvYm9vdC9tZXRob2QvbG9jYWxkZXYvY2hlY2sKCXNlZCAtaSAtRSAiL3JlZ2lz dGVyX3BhcmFtZXRlciBzdHJpbmcgT1ZFUkxBWVJPT1QvZCIgXAoJCQkiJEJBU0UiL2V0Yy9p bml0cmQvY21kbGluZS5kL2Jhc2UKCXNlZCAtaSAtRSAiL01PRFVMRVNfVFJZX0FERCBcKz0g b3ZlcmxheS9kIiAvZXRjL2luaXRyZC5tawoJc2VkIC1pIC1FICIvUFVUX0ZJTEVTIFwrPSBc L2V0Y1wvJFBST0dcLmNvbmYvZCIgL2V0Yy9pbml0cmQubWsKCXJtIC1mIC0tICIvZXRjLyRQ Uk9HLmNvbmYiICIkQkFTRS9saWIvaW5pdHJkL2Jvb3Qvc2NyaXB0cy8kUFJPRyIKCWVjaG8g IlRoZSAkUFJPRyBmZWF0dXJlIHdhcyB1bmluc3RhbGxlZCEiCglleGl0IDAKCTs7CgotaHwt LWhlbHApCgljYXQgPDwtRU9GCglVc2FnZSAkUFJPRyBbPGNvbW1hbmQ+IHwgVVVJRD0uLi4g fCBMQUJFTD0uLi4gfCA8ZGV2aWNlPl0KCglDb21tYW5kczoKCSAgLWksIC0taW5zdGFsbCAg ICAgSW5zdGFsbCAkUFJPRyBmZWF0dXJlLgoJICAtdSwgLS11bmluc3RhbGwgICBVbmluc3Rh bGwgJFBST0cgZmVhdHVyZS4KCSAgLWgsIC0taGVscCAgICAgICAgU2hvdyB0aGlzIGhlbHAg bWVzc2FnZSBhbmQgZXhpdC4KCglVVUlEPSwgTEFCRUw9IGFuZCAvZGV2L2RldmljZSBzcGVj aWZpZWQgYSBkZXZpY2Ugd2l0aCB0aGUgUi9XIGxheWVyLgoJQnkgZGVmYXVsdCBSL1cgbGF5 ZXIgd2lsbCBiZSBjcmVhdGVkIG9uIHRoZSBUTVBGUyBhdCB0aGUgaW5zdGFsbCB0aW1lLgoJ QWZ0ZXIgaW5zdGFsbCBvciB1bmluc3RhbGwgZG9uJ3QgZm9yZ2V0IHRvIHJ1biBtYWtlLWlu aXRyZCBbPGFyZ3M+XS4uLgoJRU9GCglleGl0IDAKCTs7CmVzYWMKCiMgSW5zdGFsbCBmZWF0 dXJlClsgLWQgIiRCQVNFL2xpYi9pbml0cmQvYm9vdC9zY3JpcHRzIiBdIHx8CglmYXRhbCAi bWFrZS1pbml0cmQgaXMgbm90IGluc3RhbGxlZC4iClsgISAtZiAiJEJBU0UvbGliL2luaXRy ZC9ib290L3NjcmlwdHMvJFBST0ciIF0gfHwKCWZhdGFsICJUaGUgJFBST0cgZmVhdHVyZSBh bHJlYWR5IGluc3RhbGxlZC4iCmdyZXAgLXF3ICIuLyRQUk9HIiAiJEJBU0UiL2xpYi9pbml0 cmQvYm9vdC9tZXRob2QvbG9jYWxkZXYvY2hlY2sgfHwKCWVjaG8gIi4vJFBST0ciID4+ICIk QkFTRSIvbGliL2luaXRyZC9ib290L21ldGhvZC9sb2NhbGRldi9jaGVjawpncmVwIC1xdyAi T1ZFUkxBWVJPT1QiICIkQkFTRSIvZXRjL2luaXRyZC9jbWRsaW5lLmQvYmFzZSB8fAoJZWNo byAicmVnaXN0ZXJfcGFyYW1ldGVyIHN0cmluZyBPVkVSTEFZUk9PVCIgXAoJCT4+ICIkQkFT RSIvZXRjL2luaXRyZC9jbWRsaW5lLmQvYmFzZQplY2hvICIkUFJPRz0kT1ZFUkxBWSIgPiAi L2V0Yy8kUFJPRy5jb25mIgpncmVwIC1xdyAiL2V0Yy8kUFJPRy5jb25mIiAvZXRjL2luaXRy ZC5tayB8fAoJZWNobyAiUFVUX0ZJTEVTICs9IC9ldGMvJFBST0cuY29uZiIgPj4gL2V0Yy9p bml0cmQubWsKZ3JlcCAtdyAiTU9EVUxFU19UUllfQUREIiAvZXRjL2luaXRyZC5tayB8Z3Jl cCAtcXcgb3ZlcmxheSB8fAoJZWNobyAiTU9EVUxFU19UUllfQUREICs9IG92ZXJsYXkiID4+ IC9ldGMvaW5pdHJkLm1rCmNhdCA+ICIkQkFTRS9saWIvaW5pdHJkL2Jvb3Qvc2NyaXB0cy8k UFJPRyIgPDxFT0YKIyEvYmluL2Jhc2ggLWVmdQoKLiBzaGVsbC1lcnJvcgouIC8uaW5pdHJk L2luaXRlbnYKCiMgSGFuZGxlIGZpcnN0IGV2ZW50IG9ubHkKWyAhIC1mIC8uaW5pdHJkLyRQ Uk9HIF0gfHwKCWV4aXQgMApbIC1uICJcJHskUFJPRy19IiBdIHx8IFsgISAtcyAvZXRjLyRQ Uk9HLmNvbmYgXSB8fAoJLiAvZXRjLyRQUk9HLmNvbmYKOj4gLy5pbml0cmQvJFBST0cKCmNh c2UgIlwkeyRQUk9HLX0iIGluCiIiKQkjIFNpbGVudCB1c2UgZGVmYXVsdCBib290CglleGl0 IDAKCTs7CmRpc2FibGVkKQoJZWNobyAicm9vdGZzIGhhcyByZXR1cm4gYmFjayB0byB0aGUg cmVhZC93cml0ZSBtb2RlIiA+JjIKCWV4aXQgMAoJOzsKdG1wZnMpCgllY2hvICJyb290ZnMg c3dpdGNoZWQgdG8gdGhlIHJlYWQtb25seSBtb2RlLCB1c2luZyB0bXBmcyBhcyBvdmVybGF5 IiA+JjIKCWRldmljZT0KCTs7ClVVSUQ9PyopCglkZXZpY2U9Ii9kZXYvZGlzay9ieS11dWlk L1wkeyRQUk9HIyNVVUlEPX0iCgk7OwpMQUJFTD0/KikKCWRldmljZT0iL2Rldi9kaXNrL2J5 LWxhYmVsL1wkeyRQUk9HIyNMQUJFTD19IgoJOzsKL2Rldi8/KikKCWRldmljZT0iXCQkUFJP RyIKCTs7CiopCglmYXRhbCAiXCQkUFJPRzogaW52YWxpZCAkUFJPRyIKCTs7CmVzYWMKCiMg V2FpdCB0aGUgZGV2aWNlCmlmIFsgLW4gIlwkZGV2aWNlIiBdOyB0aGVuCglpPTEwCgoJd2hp bGUgWyAiXCRpIiAhPSAwIF07IGRvCgkJZGV2PSJcJChyZWFkbGluay1lICJcJGRldmljZSIg Mj4vZGV2L251bGwgfHw6KSIKCQlbIC16ICJcJGRldiIgXSB8fCBbICEgLWIgIlwkZGV2IiBd IHx8CgkJCWJyZWFrCgkJaT0iXCQoKFwkaSAtIDEpKSIKCQlzbGVlcCAuNQoJZG9uZQoKCVsg LW4gIlwkZGV2IiBdICYmIFsgLWIgIlwkZGV2IiBdIHx8CgkJZmF0YWwgIlwkJFBST0c6IGlu dmFsaWQgZGV2aWNlIHNwZWNpZmljYXRpb24iCgllY2hvICJyb290ZnMgc3dpdGNoZWQgdG8g dGhlIHJlYWQtb25seSBtb2RlLCB1c2luZyBcJGRldiBhcyBvdmVybGF5IiA+JjIKCWRldmlj ZT0iXCRkZXYiCmZpCgplY2hvICJyZW1vdW50aW5nIC8gd2l0aCBvdmVybGF5ZnMiID4mMgoK bWtkaXIgLXAgLS0gIlwkcm9vdG1udC5ydyIgIlwkcm9vdG1udC5ybyIKCmlmIFsgLW4gIlwk ZGV2aWNlIiBdOyB0aGVuCgltb3VudCAtLSAiXCRkZXZpY2UiICJcJHJvb3RtbnQucnciCmVs c2UKCW1vdW50IC10IHRtcGZzIC1vIG1vZGU9NzU1IC0tIG5vbmUgIlwkcm9vdG1udC5ydyIK ZmkKCm9wdHM9Imxvd2VyZGlyPVwkcm9vdG1udC5ybyIKb3B0cz0iXCRvcHRzLHVwcGVyZGly PVwkcm9vdG1udC5ydy9ydyIKb3B0cz0iXCRvcHRzLHdvcmtkaXI9XCRyb290bW50LnJ3L3dr IgoKbWtkaXIgLXAgLS0gIlwkcm9vdG1udC5ydy9ydyIgIlwkcm9vdG1udC5ydy93ayIKbW91 bnQgLS1tb3ZlIC0tICJcJHJvb3RtbnQiICJcJHJvb3RtbnQucm8iCm1vdW50IC10IG92ZXJs YXkgLW8gIlwkb3B0cyIgLS0gb3ZlcmxheSAiXCRyb290bW50Igpta2RpciAtcCAtLSAiXCRy b290bW50Ly5ybyIgIlwkcm9vdG1udC8ucnciCm1vdW50IC0tbW92ZSAtLSAiXCRyb290bW50 LnJvIiAiXCRyb290bW50Ly5ybyIKbW91bnQgLS1tb3ZlIC0tICJcJHJvb3RtbnQucnciICJc JHJvb3RtbnQvLnJ3IgpybWRpciAtLSAiXCRyb290bW50LnJ3IiAiXCRyb290bW50LnJvIgoK ZWNobyAicm9vdGZzIG92ZXJsYXllZCB3aXRoIG92ZXJsYXlmcyIgPiYyCkVPRgpjaG1vZCAr eCAiJEJBU0UvbGliL2luaXRyZC9ib290L3NjcmlwdHMvJFBST0ciCmVjaG8gIlRoZSAkUFJP RyBmZWF0dXJlIHdhcyBpbnN0YWxsZWQhIgo= --------------vLt2BM2RUxWDtCZG5jHEP8o3--