On Mon, 22 Dec 2008, Ian Campbell wrote: > Ferenc seems to be using the xvda1=img1,xvda2=img2 scheme of Xen disks > (this is what xentools gets you) rather than the whole disk with > partition scheme. > > In the xvda1/xvda2 scheme /sys/block contains: > # ls /sys/block/ > ram0 ram1 ram10 ram11 ram12 ram13 ram14 ram15 ram2 ram3 > ram4 ram5 ram6 ram7 ram8 ram9 xvda1 xvda2 > > In the whole disk scheme it contains xvda as you would expect: > # ls /sys/block/ > loop0 loop1 loop2 loop3 loop4 loop5 loop6 loop7 ram0 > ram1 ram10 ram11 ram12 ram13 ram14 ram15 ram2 ram3 ram4 > ram5 ram6 ram7 ram8 ram9 xvda
thanks for the analysis and the explanation. > I've attached a patch which takes care of this difference. However the > modules still aren't loaded. hmm what? which modules are not loaded? > Note that the -xen type images seem to have the block driver builtin > (and therefore work fine) while the -686-bigmem ones have it modular > (xen-blkfront.ko) and break with MODULES=dep. argh, the syswalking doesn't add that one? could you post output with MODULES=dep for the modular case of sh -x mkinitramfs -o /tmp/foo > I've attached ls -lRt of my /sys running -686-bigmem > and /sys/devices/vbd-51712/modalias contains "xen:vbd" which is present > as an alias on the xen-blkfront.ko module. Any other info required > please ask. thanks for the patch bellow i'll apply it asap, as it is an improvement anyway > --- /usr/share/initramfs-tools/hook-functions.orig 2008-12-17 > 21:48:06.000000000 +0000 > +++ /usr/share/initramfs-tools/hook-functions 2008-12-17 21:53:02.000000000 > +0000 > @@ -269,6 +269,14 @@ > root=${root#/dev/} > block=$(awk "/^${root}/{print substr(\$5, 1, 3); exit}" \ > /proc/mdstat) > + # Xen virtual device /dev/xvdX > + elif [ "${root#/dev/xvd}" != "${root}" ]; then > + block=${root#/dev/} > + # Xen has a mode where only the individual partitions are > registered with the kernel > + # as well as the usual full disk with partition table scheme. > + if [ ! -e /sys/block/${block} ] ; then > + block=${block%[0-9]*} > + fi > # classical root device > else > block=${root#/dev/} -- maks -- To UNSUBSCRIBE, email to debian-kernel-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org