The initrd does _not_ get opened before the kernel starts.  The initrd is
used as the root file system that the kernel uses before trying to access
your DASD as the final, "real" root file system.  There should not be any
modules that need to be loaded before the /linuxrc script gets executed.
And it is the responsibility of /linuxrc to load the DASD device drivers.
The kernel you're using, however, _must_ have the file system driver built
into it (not as a module) for whatever file system is being used by the
initrd.  Otherwise you have the same problem you would have trying to use a
real disk as your root file system: how does the kernel read an ext2 file
system to be able to load the ext2 file system driver off it?  The kernel
also has to have the ramdisk support compiled into the kernel, and not as a
module.  This allows you to specify "yes" to the "Initial RAM disk (initrd)
support" option.

You should be able to verify this by this method:
1. "cat minimal-initrd | gzip -d > unzipped-initrd"
2. "mount -t ext2 unzipped-initrd /mnt -o loop"
3. cd /mnt
And then look at /mnt/linuxrc to see what it's doing inside.  Look for the
kernel modules in the initrd to make sure you have everything you need, etc.


Mark Post

-----Original Message-----
From: Linux on 390 Port [mailto:[EMAIL PROTECTED] Behalf Of
Lior Kesos
Sent: Monday, December 20, 2004 12:18 PM
To: [EMAIL PROTECTED]
Subject: Initrd internals


I'm playing with an initrd that need to support a minimal boot from a VM
image .
What I'm confused by is the inner working of initrd I understood the
initrd is supposed to get unzipped and opened the before the kernel
kicks in...
So how come I get a ...

VFS: Mounted root (ext2 filesystem).
VFS: Cannot open root device "dasdb1" or unknown-block(0,0)
Please append a correct "root=" boot option
Kernel panic: VFS: Unable to mount root fs on unknown-block(0,0)

When I read about it som ethreads talked about either lacking ext2
support or block driver support...
But isn't that the linuxrc's job to load these?
Are there modules that get loaded before the linuxrc is executed?
many thanks for any help -
regards -
--
Peace Love and Penguins -
Lior Kesos

----------------------------------------------------------------------
For LINUX-390 subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: INFO LINUX-390 or
visit
http://www.marist.edu/htbin/wlvindex?LINUX-390

----------------------------------------------------------------------
For LINUX-390 subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: INFO LINUX-390 or visit
http://www.marist.edu/htbin/wlvindex?LINUX-390

Reply via email to