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=8mCHyZRCw4Yz32EWkQmdOZKqpz/57X55WNT35MuRtrQ=; b=nbLcblw/frLeZ/kG7xhE0N1w7ERSjMlp+pUpiXxDO3uhM3ais9/hj4+52SYN8DOTlE MuR7rL2vlPUbtDg5DGTzTUBbl/vWFyovh3RoZge1cvRkKge2W2/Bq1RLjll8hjtVr98Y kAeIF6YPtByuzUZ0AsCDxMakLwDCuE2mlZzYVySppBk+LkGvYlemGWAWhAf8XciiTNEg xts9ffY25kiir4ODASyc8SH4jsX6YUWYZjG6E3XcU+sG6KkMRmMBEoa7dTNrFwFBxG2l rLeybm+hG4iSpqLvFylIFdzQTgeELtvlgw9N9nXseXcXFRXIeWlKAirB9I24PB0xDM5C pXeQ== 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=8mCHyZRCw4Yz32EWkQmdOZKqpz/57X55WNT35MuRtrQ=; b=QyydpQI9QH6tqxhP7Oo9srAOrMjYxhG09ljsN3CjVDimUpfXsCcq9dZh7GEHtS+a2V J/Z9jm9cIOetPmN/OhJpxlpiUOZ56AuTFfw4CznUW1NXr36n+yh9Kg49cRcQ9mEm3vl3 9Ugbo1zXM7EaWQNo/sTDY/4NM019U6hS7ZDCI5XXBVWtla420Rumipw8ROqQYrXYnb3r BdHCFFPZV0ARlTq0mKHWKmNftaUkNuiHPtT4qus8VEJwa0/eXzEkcv+JLW1DUibwJvTp 6HOnSqdXFfeiAvzBeulQfVXeqmuqF7ZMDr16c6Kvw4IkV7BegF8F5EHl0Oi27ZRedya7 9j9A== X-Gm-Message-State: AOAM530fMPRKeKv7vDdUF85xfiEyBv0dHZRd8cCCpVyJQhzoBiKG1KHe UXCPcX+4W12CdIsQLXk2T07ykOwZjD4= X-Google-Smtp-Source: ABdhPJx7gZbk8RNZlGq84OeE/w8EswvZK7IxpZe2Fm++m2ntNNy0E7D9aVJmyWTFD+0g6093K5d+SA== X-Received: by 2002:a2e:8708:: with SMTP id m8mr10917878lji.339.1617449483914; Sat, 03 Apr 2021 04:31:23 -0700 (PDT) To: make-initrd@lists.altlinux.org References: <20210331144057.m3eyfwnns2x3s6do@example.org> <20210331152230.dshas3odtszxafyv@example.org> <27101e86-3f0a-4612-9ecf-eb46e84ec71a@basealt.ru> <20210331155728.w4x2y6sqnnuykdzf@example.org> <0d538efa-d51b-f3f7-3034-97f2aa56ce2e@gmail.com> <20210331165523.lm27dw6bxnsaux3d@example.org> <20210401090223.nvnaf6nahsm2waij@example.org> <7f508fac-8c89-7d23-5a56-9914ba0aaa9e@gmail.com> <20210403110923.djpovbnytsfafkjm@example.org> From: Leonid Krivoshein Message-ID: <7335da84-8213-c77b-7062-8af41ea46d46@gmail.com> Date: Sat, 3 Apr 2021 14:31:22 +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: <20210403110923.djpovbnytsfafkjm@example.org> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: ru Subject: Re: [make-initrd] Release make-initrd 2.14.0 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: Sat, 03 Apr 2021 11:31:26 -0000 Archived-At: List-Archive: 03.04.2021 14:09, Alexey Gladkov пишет: > On Fri, Apr 02, 2021 at 09:37:41PM +0300, Leonid Krivoshein wrote: >> 01.04.2021 12:02, Alexey Gladkov пишет: >>> Я бы предложил синтаксис аналогичный ip=, где разные поля разделены >>> двоеточиями т.е. mountfs=[:[:]] >> И ещё FSTYPE=... по аналогии можно сделать: >> >> >> diff --git a/data/bin/initrd-sh-functions b/data/bin/initrd-sh-functions >> index a56e872..0e433c6 100644 >> --- a/data/bin/initrd-sh-functions >> +++ b/data/bin/initrd-sh-functions >> @@ -33,10 +33,26 @@ get_dev() { >> >>         case "$name" in >>                 '') >>                         return 1 >>                         ;; >> +               CDROM:*) >> +                       [ "${ID_CDROM-}" = "1" ] || [ "${ID_FS_TYPE-}" = >> "iso9660" ] || >> +                               return 1 >> +                       name="${name#CDROM:}" >> +                       name="${name:-/dev/sr0}" >> +                       ;; >> +               FSTYPE=*:?*) >> +                       name="${name#FSTYPE=}" >> +                       value="${name%%:*}" >> +                       [ "${ID_FS_TYPE-}" = "$value" ] || >> +                               return 1 >> +                       name="${name#*:}" >> +                       ;; >> +       esac >> + >> +       case "$name" in >>                 UUID=*) >>                         [ "${ID_FS_UUID-}" = "${name#UUID=}" ] || >>                                 return 1 >>                         ;; >>                 LABEL=*) >> > $ git grep '\ data/lib/uevent/filters/mountdev:21: get_dev dev "$fsdev" || > data/lib/uevent/filters/resume:8:get_dev devresume "${RESUME-}" || > features/luks/data/lib/uevent/filters/luks:31: get_dev devluks "$dev" && > features/luks/data/lib/uevent/filters/luks:35: get_dev devluks "$DEVNAME" || > features/luks/data/lib/uevent/filters/lukskeys:26: get_dev realdev "$keydev" || > features/luks/data/lib/uevent/handlers/085-luks:32: get_dev realdev "$luksdev" > features/luks/data/lib/uevent/handlers/085-luks:70: get_dev "$luksdev" || > features/pipeline/data/lib/uevent/filters/pipeline-waitdev:13: if [ -n "$spec" ] && get_dev dev "$spec"; then > > Ты правда хочешь, чтобы во всех этих фичах появилась поддержка cdrom:* ? Пока CDROM нужен лишь одной фиче (последняя строка), но, вдруг ещё где потребуется? Соответственно, варианта только два: - либо предусмотреть в get_dev() возможность указывать префиксы a.k.a CDROM: , FSTYPE: для всех, кто запрашивает get_dev(). - либо сделать обёртку типа get_pipeline_dev() и вызывать из неё get_dev(), а обёртку вызывать из pipeline-waitdev:13 Мне больше нравится первый вариант, но я же советуюсь. По идее на перечисленных "клиентов" эта "возможность" влиять не должна. Префиксы позволяют дополнительно ограничить спецификацию, но никто же не заставляет использовать эти префиксы там, где они не требуются. Но можно и заюзать, например, так: resume=FSTYPE=swap:/dev/sdb3 и в таком случае devresume получит значение только в том случае, если /dev/sdb3 является SWAP-разделом. Таких префиксов можно и больше напридумывать. -- Best regards, Leonid Krivoshein.