Bug#381351: initramfs-tools: ide-disk/specific ide modules not loaded and vgchange -ay fails using lvm2
Package: initramfs-tools
Version: 0.73
Severity: grave
Tags: patch
Justification: renders package unusable
I'm using lvm2 and when I upgraded to mkinitramfs-tool the system couldn't
boot anymore (stock debian 2.6.17-1-k7 kernel). The problem was vgchange
couldn't detect my vgs. First I realized that ide-disk module was not
loaded (the main problem that causes vgchange to fail). I added the module
manually. But even so, is like the drivers or vgchange need some extra
time to come up. I had to add a sleep between the the modprobe ide-disk
and vgchange to make it work. Finally the specific ide module (amd74xx in
my setup) was not loaded either, and when it's not loaded at a very first
stage it can't be used so I couldn't use DMA transfers with my HD. I had
to hack again the script to manually load this module (before ide-generic
was loaded).
Here is a very very very ugly patch to fix this problems (in my setup,
this is not even a general solution). I just attach it so u can see better
how I can boot my system now. I don't know if it's udev failing to detect
my hardware, but this was working just fine before that upgrade.
Thanks for your help and time and excuse my poor english...
-- Package-specific info:
-- /proc/cmdline
root=/dev/mapper/vg0-root ro vga=791
-- /proc/filesystems
cramfs
xfs
ext3
-- lsmod
Module Size Used by
nvidia 4549844 12
agpgart 30152 1 nvidia
pktcdvd 26620 1
ipv6 223968 12
nfsd 198596 13
exportfs 5888 1 nfsd
button 6800 0
ac 5124 0
battery 9476 0
nfs 195404 5
lockd 54152 3 nfsd,nfs
nfs_acl 3840 2 nfsd,nfs
sunrpc 138876 11 nfsd,nfs,lockd,nfs_acl
tuner 46124 0
tvaudio 22556 0
bttv 158324 0
video_buf 23172 1 bttv
firmware_class 10112 1 bttv
ir_common 27332 1 bttv
compat_ioctl32 1728 1 bttv
i2c_algo_bit 8648 1 bttv
v4l2_common 14336 2 tuner,bttv
btcx_risc 5000 1 bttv
tveeprom 14096 1 bttv
videodev 9216 1 bttv
forcedeth 26700 0
ext3 119304 1
jbd 50772 1 ext3
mbcache 8580 1 ext3
rtc 12724 0
fuse 35464 0
usb_storage 71488 0
sr_mod 16228 0
sd_mod 19008 0
scsi_mod 123784 3 usb_storage,sr_mod,sd_mod
ohci_hcd 18500 0
usbcore 112384 3 usb_storage,ohci_hcd
ns558 5056 0
analog 10976 0
joydev 9280 0
snd_intel8x0 30428 2
snd_ac97_codec 82976 1 snd_intel8x0
snd_ac97_bus 2624 1 snd_ac97_codec
snd_pcm_oss 36704 0
snd_mixer_oss 16192 3 snd_pcm_oss
snd_pcm 74884 3 snd_intel8x0,snd_ac97_codec,snd_pcm_oss
snd_timer 21124 1 snd_pcm
snd 48548 6 snd_intel8x0,snd_ac97_codec,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer
soundcore 9440 3 snd
snd_page_alloc 9800 2 snd_intel8x0,snd_pcm
gameport 14600 3 ns558,analog
w83781d 29480 0
hwmon_vid 2880 1 w83781d
i2c_isa 5184 1 w83781d
i2c_amd756 6468 0
i2c_dev 8772 0
i2c_core 19904 10 nvidia,tuner,tvaudio,bttv,i2c_algo_bit,tveeprom,w83781d,i2c_isa,i2c_amd756,i2c_dev
mousedev 11108 1
psmouse 34888 0
floppy 54788 0
ide_cd 36128 1
cdrom 32864 3 pktcdvd,sr_mod,ide_cd
xfs 496216 3
dm_mirror 19216 0
dm_snapshot 15968 0
dm_mod 50520 7 dm_mirror,dm_snapshot
ide_disk 15360 5
ide_generic 1664 0 [permanent]
amd74xx 12956 0 [permanent]
ide_core 111432 5 usb_storage,ide_cd,ide_disk,ide_generic,amd74xx
thermal 13128 0
processor 25800 1 thermal
fan 4804 0
-- System Information:
Debian Release: testing/unstable
APT prefers unstable
APT policy: (990, 'unstable'), (99, 'experimental')
Architecture: i386 (i686)
Shell: /bin/sh linked to /bin/dash
Kernel: Linux 2.6.17-1-k7
Locale: LANG=es_AR.UTF-8, LC_CTYPE=es_AR.UTF-8 (charmap=UTF-8)
Versions of packages initramfs-tools depends on:
ii busybox 1:1.1.3-2 Tiny utilities for small and embed
ii cpio 2.6-16 GNU cpio -- a program to manage ar
ii klibc-utils 1.4.11-3 small statically-linked utilities
ii module-init-tools 3.2.2-3 tools for managing Linux kernel mo
ii udev 0.093-1 /dev/ and hotplug management daemo
initramfs-tools recommends no packages.
-- no debconf information
--- lvm.orig 2006-08-03 16:07:01.179240500 -0300
+++ /usr/share/initramfs-tools/scripts/local-top/lvm 2006-08-03 17:06:16.938238250 -0300
@@ -53,7 +53,11 @@
# Reduce padded --'s to -'s
vg=$(echo ${vg} | sed -e 's#--#-#g')
- vgchange -ay ${vg}
+ # If we don't see the vg yet we wait a little..
+ if ! vgchange -ay ${vg}; then
+ sleep 1
+ vgchange -ay ${vg}
+ fi
}
if [ -e /scripts/local-top/lvm2 ]; then
@@ -64,6 +68,7 @@
exit 0
fi
+modprobe -q ide-disk
modprobe -q dm-mod
modprobe -q dm-snapshot
modprobe -q dm-mirror
--- local.orig 2006-08-03 16:07:08.223680750 -0300
+++ /usr/share/initramfs-tools/scripts/local 2006-08-03 17:05:49.440519750 -0300
@@ -4,6 +4,7 @@
mountroot ()
{
[ "$quiet" != "y" ] && log_begin_msg "Running /scripts/local-top"
+ /sbin/modprobe amd74xx
run_scripts /scripts/local-top
[ "$quiet" != "y" ] && log_end_msg
Reply to: