John Z. Bohach wrote:
This is probably a question with an obvious answer, but I haven't found it
elsewhere, so I hope its okay if I ask here...
As the subject says, if I have my kernel command line with
'...root=/dev/sda1...' then I get
VFS: Cannot open root device "sda1" or unknown-block(0,0)
however, everything else being the same, if I have
'...root=0x0801...', then it works fine. Note that
SCSI device sda: 2001888 512-byte hdwr sectors (1025 MB)
sda: Write Protect is off
sda: assuming drive cache: write through
Attached scsi removable disk sda at scsi0, channel 0, id 0, lun 0
preceeds this in the console both for the failed case and the succeeding case
(as I already have the rootdelay=10 param. on the command line as well).
I've narrowed this down to another CONFIG_* option, but I can't find which
one in tractable time...
Does anybody know which CONFIG_* option might contribute to text string
root=/dev/sda1 failing while its root=0x0801 cousin works? I've already tried the
CONFIG_KALLSYMS one, but no luck. Would this possibly have to do with
CONFIG_NLS=m (et al), as I have those as modules, and if so, is this intentional?
This is expected behavior. The kernel doesn't have a /dev at the time
it mounts the root fs so it has no idea what /dev/sda1 is. Typically
lilo will translate /dev/sda1 to 0x0801 automatically for you and pass
that to the kernel for this reason.
These days most distributions are using an initrd which the kernel
mounts as the root fs, and that sets up a minimal /dev and does some
hardware detection. In that scenario, you can use free form /dev
strings, assuming that they actually exist by the time the initrd's
startup scripts finish running.
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Video 4 Linux]
[Linux for the blind]