lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Mon, 23 May 2011 20:06:17 +0200
From:	Micha Nelissen <micha@...i.hopto.org>
To:	Alan Stern <stern@...land.harvard.edu>
CC:	Randy Dunlap <rdunlap@...otime.net>, Jens Axboe <axboe@...nel.dk>,
	TejunHeo <tj@...nel.org>, lud <linux-usb@...r.kernel.org>,
	Kernel development list <linux-kernel@...r.kernel.org>
Subject: Re: USB stick as root device does not work

Hi all,

Alan Stern wrote:
> On Mon, 23 May 2011, Randy Dunlap wrote:
> Better to ask people familiar with the block layer (CC'ed).

I found out what happened: I use LILO, and lilo was not passing
root=/dev/sdb1 on the commandline, but root=811. However, I didn't see
that since on i386 that part had already scrolled off-screen. I found
out by accident, due to a user space program trying to parse that,
expecting a string, getting a number :-).

Using the following in my lilo.conf:

	append="root=/dev/sdb1 rootwait"
instead of
	root=/dev/sdb1

works perfectly. Maybe this information is useful for somebody else; I
did not find it using a quick google.

Thanks for your attention.

Micha


>> On Sun, 22 May 2011 16:13:17 +0200 Micha Nelissen wrote:
>>
>>> 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
>>> --
>> ---
>> ~Randy
>> *** Remember to use Documentation/SubmitChecklist when testing your code ***
> 
> 
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ