make-initrd -k $kversion MODULES_ADD=модуль -N AUTODETECT= не добавляет модуль, пока не уберёшь AUTODETECT=. Проблема есть в версии 2.8.1 и нет в версии 2.7.0
Вы чего хотите добиться этим ?
(Ответ для Alexey Gladkov на комментарий #1) > Вы чего хотите добиться этим ? Мы таким образом собираем rootfs для одноплатников. Вчера стали собираться с initrd, в котором отсутствуют модули ядра. Собираем такой командой: make-initrd -N -k "$KVER" AUTODETECT= FEATURES+="$GLOBAL_VM_INITRDFEATURES" MODULES_TRY_ADD+="$GLOBAL_VM_INITRDMODULES"
Переменные MODULES_* это параметры фичи add-modules. С одной стороны это регрессия, но с другой стороны add-modules это фича. Вы выключили автоугадав и фичи не добавляются. make-initrd -N -k "$KVER" \ AUTODETECT= FEATURES="add-modules $GLOBAL_VM_INITRDFEATURES" \ MODULES_TRY_ADD="$GLOBAL_VM_INITRDMODULES" Я не уверен, что хочу возвращать старое поведение.
Кстати, а в GLOBAL_VM_INITRDFEATURES у вас что ?
(Ответ для Alexey Gladkov на комментарий #3) > Переменные MODULES_* это параметры фичи add-modules. > > С одной стороны это регрессия, но с другой стороны add-modules это фича. > Вы выключили автоугадав и фичи не добавляются. > > make-initrd -N -k "$KVER" \ > AUTODETECT= FEATURES="add-modules $GLOBAL_VM_INITRDFEATURES" \ > MODULES_TRY_ADD="$GLOBAL_VM_INITRDMODULES" > > Я не уверен, что хочу возвращать старое поведение. Т.е. раньше эта фича добавлялась всегда? Это ложный след тогда. Так как add-modules в $GLOBAL_VM_INITRDFEATURES есть: http://git.altlinux.org/people/antohami/packages/mkimage-profiles.git?p=mkimage-profiles.git;a=blob;f=features.in/kernel/config.mk;h=a8d2ce37ed29bc741549e137602bbdeb5f4fa891;hb=40895c45a5d0ce2d4e88950f33a4ddbe28d6e0c7#l47 Тогда проблема в том, что $GLOBAL_VM_INITRDFEATURES в последние несколько месяцев пишется в initrd.mk: http://git.altlinux.org/people/antohami/packages/mkimage-profiles.git?p=mkimage-profiles.git;a=blob;f=features.in/build-vm/image-scripts.d/17-kernel;h=83126c1e87f32f0e550d9e4e362b0a78782d4f9d;hb=40895c45a5d0ce2d4e88950f33a4ddbe28d6e0c7 Получается, в версии 2.8.1 при отключенном AUTODETECT из initrd.mk ничего не берётся?
(Ответ для Антон Мидюков на комментарий #5) > (Ответ для Alexey Gladkov на комментарий #3) > > Переменные MODULES_* это параметры фичи add-modules. > > > > С одной стороны это регрессия, но с другой стороны add-modules это фича. > > Вы выключили автоугадав и фичи не добавляются. > > > > make-initrd -N -k "$KVER" \ > > AUTODETECT= FEATURES="add-modules $GLOBAL_VM_INITRDFEATURES" \ > > MODULES_TRY_ADD="$GLOBAL_VM_INITRDMODULES" > > > > Я не уверен, что хочу возвращать старое поведение. > > Т.е. раньше эта фича добавлялась всегда? Возможно, у вас она добавляется через какую-то другую фичу. Поэтому я испрашивал о содержимом GLOBAL_VM_INITRDFEATURES. Я хочу разобраться является ли эта ситуация багой. > Это ложный след тогда. Так как add-modules в $GLOBAL_VM_INITRDFEATURES есть: > > http://git.altlinux.org/people/antohami/packages/mkimage-profiles. > git?p=mkimage-profiles.git;a=blob;f=features.in/kernel/config.mk; > h=a8d2ce37ed29bc741549e137602bbdeb5f4fa891; > hb=40895c45a5d0ce2d4e88950f33a4ddbe28d6e0c7#l47 Ок. Это логично. Если выключен AUTODETECT, то add-modules нужно добавлять руками. > Тогда проблема в том, что $GLOBAL_VM_INITRDFEATURES в последние несколько > месяцев пишется в initrd.mk: > http://git.altlinux.org/people/antohami/packages/mkimage-profiles. > git?p=mkimage-profiles.git;a=blob;f=features.in/build-vm/image-scripts.d/17- > kernel;h=83126c1e87f32f0e550d9e4e362b0a78782d4f9d; > hb=40895c45a5d0ce2d4e88950f33a4ddbe28d6e0c7 > > Получается, в версии 2.8.1 при отключенном AUTODETECT из initrd.mk ничего не > берётся? Берётся. Дело не в этом. Я пробую воспроизвести проблему, но не получается: $ cat /etc/initrd.mk FEATURES += add-modules $ make-initrd -D -b /tmp MODULES_TRY_ADD+=b43 AUTODETECT= [00:00:00] Config file: /etc/initrd.mk [00:00:00] Creating initrd image ... [00:00:02] Putting modules ... [00:00:02] Generating module dependencies in image ... [00:00:02] Used features: add-modules depmod-image [00:00:02] Packed modules: b43 bcma cfg80211 cordic libarc4 mac80211 rfkill [00:00:02] Sorting sysvinit services ... [00:00:03] Packing image to archive ... [00:00:03] Installing image ... [00:00:03] Unpacked size: 26M [00:00:03] Image size: 13M [00:00:03] Image is saved as /tmp/initrd-5.5.0-lks-wks-alt0.7.img $ initrd-ls /tmp/initrd-5.5.0-lks-wks-alt0.7.img |grep -o b43\.ko b43.ko
Случайная мысль: не может ли повлиять окружение, которое внутри mkimage-profiles ? Вы не вводили какие-то новые переменные ?
Ещё один вопрос: Вы добавляете FEAUTURES в конец файла: http://git.altlinux.org/people/antohami/packages/mkimage-profiles.git?p=mkimage-profiles.git;a=blob;f=features.in/build-vm/image-scripts.d/17-kernel;h=83126c1e87f32f0e550d9e4e362b0a78782d4f9d;hb=40895c45a5d0ce2d4e88950f33a4ddbe28d6e0c7#l24 Вы не могли бы показать полное содержимое получаемого /etc/initrd.mk ?
Created attachment 8863 [details] Получаемый initrd.mk в mkimage-profiles
Created attachment 8864 [details] make-initrd -v в m-p (проблемный) На x86_64 проблема тоже ловится, попадает мало модулей: /usr/sbin/initrd-ls initrd-5.4.51-std-def-alt1.img |grep /lib/modules 1 drwxr-xr-x 2 0 0 0 Jul 11 21:40:26 2020 ./lib/modules 1 drwxr-xr-x 2 0 0 0 Jul 11 21:40:26 2020 ./lib/modules/5.4.51-std-def-alt1 1 -rw-r--r-- 1 0 0 0 Jul 11 21:40:26 2020 ./lib/modules/5.4.51-std-def-alt1/modules.devname 1 -rw-r--r-- 1 0 0 17550 Jul 11 21:40:26 2020 ./lib/modules/5.4.51-std-def-alt1/modules.builtin.alias.bin 1 -rw-r--r-- 1 0 0 7370 Jul 11 21:40:26 2020 ./lib/modules/5.4.51-std-def-alt1/modules.builtin.bin 1 -rw-r--r-- 1 0 0 18135 Jul 11 21:40:26 2020 ./lib/modules/5.4.51-std-def-alt1/modules.symbols.bin 1 -rw-r--r-- 1 0 0 14756 Jul 11 21:40:26 2020 ./lib/modules/5.4.51-std-def-alt1/modules.symbols 1 -rw-r--r-- 1 0 0 55 Jul 11 21:40:26 2020 ./lib/modules/5.4.51-std-def-alt1/modules.softdep 1 -rw-r--r-- 1 0 0 16794 Jul 11 21:40:26 2020 ./lib/modules/5.4.51-std-def-alt1/modules.alias.bin 1 -rw-r--r-- 1 0 0 19409 Jul 11 21:40:26 2020 ./lib/modules/5.4.51-std-def-alt1/modules.alias 1 -rw-r--r-- 1 0 0 1008 Jul 11 21:40:26 2020 ./lib/modules/5.4.51-std-def-alt1/modules.dep.bin 1 -rw-r--r-- 1 0 0 697 Jul 11 21:40:26 2020 ./lib/modules/5.4.51-std-def-alt1/modules.dep 1 drwxr-xr-x 2 0 0 0 Jul 11 21:40:26 2020 ./lib/modules/5.4.51-std-def-alt1/kernel 1 drwxr-xr-x 2 0 0 0 Jul 11 21:40:26 2020 ./lib/modules/5.4.51-std-def-alt1/kernel/drivers 1 drwxr-xr-x 2 0 0 0 Jul 11 21:40:26 2020 ./lib/modules/5.4.51-std-def-alt1/kernel/drivers/scsi 1 -rw------- 1 0 0 491216 Jul 10 02:20:44 2020 ./lib/modules/5.4.51-std-def-alt1/kernel/drivers/scsi/scsi_mod.ko 1 drwxr-xr-x 2 0 0 0 Jul 11 21:40:26 2020 ./lib/modules/5.4.51-std-def-alt1/kernel/drivers/ata 1 -rw------- 1 0 0 539864 Jul 10 02:20:44 2020 ./lib/modules/5.4.51-std-def-alt1/kernel/drivers/ata/libata.ko 1 -rw------- 1 0 0 30352 Jul 10 02:20:44 2020 ./lib/modules/5.4.51-std-def-alt1/kernel/drivers/ata/libahci_platform.ko 1 -rw------- 1 0 0 79496 Jul 10 02:20:44 2020 ./lib/modules/5.4.51-std-def-alt1/kernel/drivers/ata/libahci.ko 1 -rw------- 1 0 0 58624 Jul 10 02:20:44 2020 ./lib/modules/5.4.51-std-def-alt1/kernel/drivers/ata/ata_piix.ko 1 -rw------- 1 0 0 12736 Jul 10 02:20:44 2020 ./lib/modules/5.4.51-std-def-alt1/kernel/drivers/ata/ahci_platform.ko 1 -rw------- 1 0 0 81584 Jul 10 02:20:44 2020 ./lib/modules/5.4.51-std-def-alt1/kernel/drivers/ata/ahci.ko 1 -rw------- 1 0 0 40948 Jul 10 02:20:44 2020 ./lib/modules/5.4.51-std-def-alt1/modules.builtin.modinfo 1 -rw------- 1 0 0 187635 Jul 10 02:20:44 2020 ./lib/modules/5.4.51-std-def-alt1/modules.order 1 -rw------- 1 0 0 5967 Jul 10 02:20:44 2020 ./lib/modules/5.4.51-std-def-alt1/modules.builtin Это полученный при сборке в m-p initrd.
(Ответ для Alexey Gladkov на комментарий #7) > Случайная мысль: не может ли повлиять окружение, которое внутри > mkimage-profiles ? > Вы не вводили какие-то новые переменные ? Нет. Я пробовал собираться из архива за прошлую неделю с этим же профилем, собираются нормальными.
Created attachment 8865 [details] make-initrd -v в m-p (нормальный) А вот если добавить только FEATURES+=add-modules, то собирается нормальный. Если добавить FEATURES+="$GLOBAL_VM_INITRDFEATURES", то получается минималистичный initrd.img.
(Ответ для Антон Мидюков на комментарий #12) > Создано вложение 8865 [details] [подробности] > make-initrd -v в m-p (нормальный) > > А вот если добавить только FEATURES+=add-modules, то собирается нормальный. > Если добавить FEATURES+="$GLOBAL_VM_INITRDFEATURES", то получается > минималистичный initrd.img. Нет, я не прав. Он минималистичный, потому что фича compress не отработала. Итого получается, что команда: make-initrd -N -v -k 5.4.51-std-def-alt1 AUTODETECT= MODULES_TRY_ADD+='ext4 ahci sd_mod nvme nvme-core ahci_platform ehci-pci ohci-pci uhci-hcd xhci-pci uas sdhci-acpi sdhci-pci sdhci-pltfm xhci-plat-hcd dwc2 mmc_block usbhid evdev ata_piix virtio-scsi virtio-blk virtio-rng virtio_net virtio-mmio virtio_pci virtio_console virtio_input' FEATURES+='add-modules qemu cleanup compress' не добавляет большинство модулей из этого списка, хотя они есть. На моём ноутбуке проблема воспроизводится.
После того, как я убрал недоступный модуль dwc2 для x86_64, initrd собрался нормальный. Т.е. MODULES_TRY_ADD перестал справляться со своей задачей (как я её понимаю), добавлять все доступные модули. Сейчас, видимо, добавление модулей прекращается после спотыкания об несуществующий модуль.
make-initrd-2.8.2-alt1 -> sisyphus: Mon Jul 13 2020 Alexey Gladkov <legion@altlinux.ru> 2.8.2-alt1 - Feature changes: + add-modules: Put MODULES_PRELOAD into the modules-preudev (thx Gleb F-Malinovskiy) + add-modules: Fix kmodule.deps.d execution (ALT#38696) - Utilities: + bug-report: Fix device list + depinfo: Do not stop on error (ALT#38698) + depinfo: Add option to read names from the file - Misc: + Change the priority of directories when copying to an image
Подтверждаю, что исправлено. Спасибо!