On Sun, 18 Jan 2009, Dmitry Nezhevenko wrote:

> Hi. I'm trying to get something like LiveFlash working with btrfs as root
> filesystem. Currently debian versions of blkid(8) and other e2fsprogs
> binaries don't recognize it. According to initramfs-tools(8) it's possible
> to specify filesystem type manually at boot time using "rootfstype=my_fs"
> parameter. 

right!
 
> Current version of initramfs-tools waits for root device to appear and
> checks that filesystem type can be detected:
> 
>               while [ ! -e "${ROOT}" ] \
>               || ! $(get_fstype "${ROOT}" >/dev/null); do
>                       /bin/sleep 0.1
>                       slumber=$(( ${slumber} - 1 ))
>                       [ ${slumber} -gt 0 ] || break
>               done
> 
> But get_fstype don't understand btrfs, so it just waits for timeout here.
> My problem is that ROOTFSTYPE is used only _after_ this loop  and there is
> no way to workaround it.
> 
> I think that we should allow get_fstype to fail if filesystem type was
> provided manually at boot time. We can just check something like [ -z
> "${ROOTFSTYPE}" ]. 
> 
> Please take a look to attached patch as a reference fix.

have a look where slumber is set.
 
>               slumber=$(( ${slumber} * 10 ))
>               while [ ! -e "${ROOT}" ] \
> -             || ! $(get_fstype "${ROOT}" >/dev/null); do
> +             || ( [ -z "${ROOTFSTYPE}" ] && ! $(get_fstype "${ROOT}" 
> >/dev/null) ); do
>                       /bin/sleep 0.1
>                       slumber=$(( ${slumber} - 1 ))
>                       [ ${slumber} -gt 0 ] || break

just set rootfstype *and* rootdelay.

unless some convincing info comes up, i'll close that bug away ;)

kind regards

-- 
maks



-- 
To UNSUBSCRIBE, email to debian-kernel-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to