Summary: | не загружается сгенерённый initrd | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Product: | Sisyphus | Reporter: | Anton Farygin <rider> | ||||||||
Component: | make-initrd | Assignee: | Alexey Gladkov <legion> | ||||||||
Status: | CLOSED FIXED | QA Contact: | qa-sisyphus | ||||||||
Severity: | major | ||||||||||
Priority: | P3 | CC: | antohami, glebfm, ldv, legion, placeholder, rider | ||||||||
Version: | unstable | ||||||||||
Hardware: | all | ||||||||||
OS: | Linux | ||||||||||
Attachments: |
|
Description
Anton Farygin
2010-12-07 21:30:51 MSK
Для начала приложи результат: make-initrd bug-report Created attachment 4693 [details]
make-initrd-bugreport
У тебя корень на hda1 (по версии blkid), но в /sys и /proc/partitions я его не вижу. Странная у blkid версия о корне. Корень у меня на sda1, он же, по версии blkid: /dev/sda1: UUID="b24807b1-a56e-4427-b82a-d6245392c81c" TYPE="ext3" Откуда make-initrd bugreport берёт blkid ??? (В ответ на комментарий №4) > Откуда make-initrd bugreport берёт blkid ??? Он берёт blikd.tab. Сейчас исправил багу чтобы в репорт попадал 'blkid -c /dev/null'. Можешь приложить рабочий и нерабочий initrd ? # blkid -c /dev/null /dev/sda1: UUID="b24807b1-a56e-4427-b82a-d6245392c81c" TYPE="ext3" /dev/sda2: UUID="290c9116-0bde-40f8-a475-6b08942ac1b7" TYPE="swap" /dev/sdb1: UUID="s1nYzX-Ndav-fvY9-2qes-hHf9-74Qc-QPtqYT" TYPE="LVM2_member" /dev/sdd1: UUID="WD1aYa-aSz2-TEIA-19Ie-cqSr-J3Nf-gfpvL0" TYPE="LVM2_member" /dev/sde1: UUID="gTY8fg-2FSf-oGcr-sbMd-a00j-3mN2-MCDg6J" TYPE="LVM2_member" /dev/sdc1: UUID="wAejqO-wht0-Yi9g-2Xh8-HnXp-pWvE-Eu7gY3" TYPE="LVM2_member" /dev/mapper/ftpn-ftpn: UUID="f6467521-566b-4b3d-8551-0da433559148" TYPE="xfs" initrd только от разных ядер, от одного не смогу ;) Также можешь попробовать добавить в конфиг: FEATURES += ide-to-scsi перегенерировать initrd и попробовать результат ? Created attachment 4694 [details]
initrd-2.6.35-std-def-alt8.img
Рабочий
Created attachment 4695 [details]
initrd-2.6.35-un-def-alt9.img
нерабочий
(В ответ на комментарий №7) > Также можешь попробовать добавить в конфиг: > > FEATURES += ide-to-scsi > > перегенерировать initrd и попробовать результат ? Всё могу, кроме "попробовать результат" ;( Зачем там ide-to-scsi ? (В ответ на комментарий №10) > Всё могу, кроме "попробовать результат" ;( Тогда как предполагаешь проверять исправлен ли make-initrd ? > Зачем там ide-to-scsi ? Эта фича, как я считаю исправит initrd. сложный вопрос. Пока не знаю. Надо выбраться в эту серверную и поэкспериментировать, когда буду уверен что есть работающее исправление. Пока такой уверенности нет. А эта фича точно не исправит. вот lsmod с текущего ядра, которое тоже не грузилось с make-initrd и загрузилось с mkinitrd. Тут видно, что ide модули у меня давно висят в blacklist. # lsmod Module Size Used by nfsd 234952 13 lockd 62121 1 nfsd nfs_acl 2185 1 nfsd auth_rpcgss 33115 1 nfsd af_packet 15919 2 hwmon_vid 2270 0 eeprom 4071 0 sunrpc 197585 13 nfsd,lockd,nfs_acl,auth_rpcgss ip_gre 12622 0 ebt_among 2215 4 ebt_arp 1557 6 ebt_ip 1294 6 bridge 61255 0 stp 1563 1 bridge llc 4392 2 bridge,stp ebtable_filter 1431 1 ebtables 15278 1 ebtable_filter iptable_nat 5027 1 nf_nat 18618 1 iptable_nat iptable_mangle 2583 1 xfs 885384 1 exportfs 3441 2 nfsd,xfs dm_mod 63859 6 ppdev 7335 0 parport_pc 19348 0 parport 31051 2 ppdev,parport_pc i2c_i801 9222 0 asus_atk0110 12954 0 hwmon 1872 1 asus_atk0110 i2c_core 25862 2 eeprom,i2c_i801 sg 24682 0 8139too 26428 0 sky2 40129 0 mii 4289 1 8139too tun 13481 2 ext3 116892 1 jbd 44054 1 ext3 mbcache 5918 1 ext3 ata_generic 2555 0 ata_piix 19016 6 pata_acpi 2455 0 sd_mod 33376 11 crc_t10dif 1223 1 sd_mod (В ответ на комментарий №12) > сложный вопрос. Пока не знаю. Надо выбраться в эту серверную и > поэкспериментировать, когда буду уверен что есть работающее исправление. Пока > такой уверенности нет. Тогда я не знаю как помочь. У меня нет стенда с такой нерабочей конфигурацией. Поэтому гарантий дать не могу. > вот lsmod с текущего ядра, которое тоже не грузилось с make-initrd и > загрузилось с mkinitrd. Тут видно, что ide модули у меня давно висят в > blacklist. Я вижу, что в нерабочем образе не хватает sd_mod, который загружен в системе и присутствует в рабочем образе. Такое происходит из-за ide модулей. да, похоже что в этом дело. Осталось только понять, почему логика mkinitrd сработала, а make-initrd нет ? завтра дойду до серверной и перегружу сервер с обновлённым initrd. Кстати, после изменения конфига зачем-то ещё влетел cdrom и sr_mod # diff -u a2 a1 --- a2 2010-12-07 23:24:53.000000000 +0300 +++ a1 2010-12-07 23:24:45.000000000 +0300 @@ -22,7 +22,9 @@ lib/modules/2.6.35-un-def-alt9/kernel/fs lib/modules/2.6.35-un-def-alt9/kernel/fs/ext3 lib/modules/2.6.35-un-def-alt9/kernel/fs/jbd +lib/modules/2.6.35-un-def-alt9/kernel/lib lib/modules/2.6.35-un-def-alt9/kernel/drivers +lib/modules/2.6.35-un-def-alt9/kernel/drivers/cdrom lib/modules/2.6.35-un-def-alt9/kernel/drivers/ata lib/modules/2.6.35-un-def-alt9/kernel/drivers/scsi etc @@ -120,10 +122,14 @@ lib/modules/2.6.35-un-def-alt9/kernel/fs/ext3/ext3.ko lib/modules/2.6.35-un-def-alt9/kernel/fs/jbd/jbd.ko lib/modules/2.6.35-un-def-alt9/kernel/fs/mbcache.ko +lib/modules/2.6.35-un-def-alt9/kernel/lib/crc-t10dif.ko +lib/modules/2.6.35-un-def-alt9/kernel/drivers/cdrom/cdrom.ko lib/modules/2.6.35-un-def-alt9/kernel/drivers/ata/pata_acpi.ko lib/modules/2.6.35-un-def-alt9/kernel/drivers/ata/ata_piix.ko lib/modules/2.6.35-un-def-alt9/kernel/drivers/ata/ata_generic.ko lib/modules/2.6.35-un-def-alt9/kernel/drivers/ata/libata.ko +lib/modules/2.6.35-un-def-alt9/kernel/drivers/scsi/sr_mod.ko +lib/modules/2.6.35-un-def-alt9/kernel/drivers/scsi/sd_mod.ko lib/modules/2.6.35-un-def-alt9/kernel/drivers/scsi/scsi_mod.ko (В ответ на комментарий №14) > да, похоже что в этом дело. Осталось только понять, почему логика mkinitrd > сработала, а make-initrd нет ? Потому что mkinitrd пользуется эвристикой (если это можно так назвать) для того чтобы определить список модулей. make-initrd пользуется sysfs и modalias. > Кстати, после изменения конфига зачем-то ещё влетел cdrom и sr_mod Какого изменения ? FEATURES += ide-to-scsi эвристика, видимо, иногда полезна. (В ответ на комментарий №16) > FEATURES += ide-to-scsi > > эвристика, видимо, иногда полезна. Это не эвристика: $ cat ide-to-scsi/rules.mk BLACKLIST_MODULES += ide-generic ide-core ide-gd_mod MODULES_ADD += sd_mod sr_mod scsi_mod этот модуль блокирует ide модули добавляет scsi модули. Собственно, отсюда и модуль cdrom: $ modprobe --show-depends sr_mod |sed 's,^.*/kernel/,,' drivers/cdrom/cdrom.ko drivers/scsi/scsi_mod.ko drivers/scsi/sr_mod.ko я про эвристику в mkinitrd. sd_mod надо всегда добавлять. Не всегда. В "обычной" системе этот модуль вытягивается сам. Я думаю, что багу уже можно закрыть. |