USB stick as root device does not work

From: Micha Nelissen
Date: Sun May 22 2011 - 10:16:32 EST


Hi,

Using USB stick as root device does not work for me. I specify
'root=/dev/sdb1 rootwait' on the kernel commandline, but the kernel does
not wait for the USB stick to be scanned and its partitions found. I
have a harddisk which is /dev/sda, and this USB stick would be /dev/sdb.

I think blk_lookup_devt returns the block device number even if it does
not exist yet, and init/do_mounts.c:473 therefore skips waiting:

if ((ROOT_DEV == 0) && root_wait) {

due to ROOT_DEV having become non-zero already.

If I use the commandline: 'root=/dev/sdb1 rootdelay=5' then it does
mount and boot properly. However, using rootwait seems safer and faster
to me, that it's meant for this use case.

Thanks for any pointers,

Micha
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/