[make-initrd] Release make-initrd 2.14.0

Alexey Gladkov gladkov.alexey at gmail.com
Sat Apr 3 14:09:23 MSK 2021


On Fri, Apr 02, 2021 at 09:37:41PM +0300, Leonid Krivoshein wrote:
> 
> 01.04.2021 12:02, Alexey Gladkov пишет:
> > Я бы предложил синтаксис аналогичный ip=, где разные поля разделены
> > двоеточиями т.е. mountfs=<device>[:<fstype>[:<mountopts>]]
> 
> И ещё 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 '\<get_dev '
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:* ?

> Пока просто посоветоваться...
> А ещё хотел спросить: в этой же get_dev() есть такая строка:
> 
> [ "${MAJOR-}" = "$(( $value / 256 ))" ] && [ "${MINOR-}" = "$(( $value % 256
> ))" ] ||
> 
> Но я не нашёл выше кода, который присваивал бы значение переменной $value.
> Тут точно нет ошибки?

Ты прав. Это регрессия после коммита:

799fd42580f4a7321050bad98d35e97f33275e7f

-- 
Rgrds, legion



More information about the Make-initrd mailing list