hi
I am thinking that why my romfs is unable to be mounted as a root
device.
my kernel command line:(I have linked the romfs into the kernel
image,the address below is calculated automatically :)
root=/dev/ram0 initrd=0x0c0a235c,139k keepinitrd
and I have modified the makefile in which /dev/ram0 will be created.
what else I have missed?
and just read a article via
http://www.ucdot.org/article.pl?sid=03/01/11/1049210&mode=thread
<http://www.ucdot.org/article.pl?sid=03/01/11/1049210&mode=thread>
(Phil Wilshire SDCS System Design & Consulting Services
[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]> )
so I am wondering that the /dev/root(ROOT_DEV) was not created
successfully?because no blkmem.c in kernel 2.6,must I enable the MTD
option to make the kernel support romfs?they have any relation?
I will appreciate your comments!
thanks®ards
rui
________________________________
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED]
Sent: Monday, May 14, 2007 5:31 PM
To: [email protected]
Subject: [uClinux-dev] why init/do_mounts.c/mount_block_root
sys_mountreturn -EFAULT(-14)?
hi guys
I got the problem in the init/do_mounts.c
static void __init mount_block_root(char *name, int flags)
....
retry:
for (p = fs_names; *p; p += strlen(p)+1) {
int err = sys_mount(name, "/root", p, flags,
root_mount_data);
printk("VFS: tried fs_name = <%s> err= %d\n",p,err);
switch (err) {
case 0:
printk("case 0\n");
goto out;
case -EACCES:
printk("case -EACCESS\n");
flags |= MS_RDONLY;
goto retry;
case -EINVAL:
case -EBUSY:
printk("case -EBUSY &
EINVAL\n");
continue;
}
/*
* Allow the user to distinguish between failed
open
* and bad superblock on root device.
*/
printk ("VFS: Cannot open root device \"%s\" or
%s\n",
root_device_name, kdevname (ROOT_DEV));
...
well,in a normal 2.4 kernel will get this result:
*******
VFS: test name = </dev/root>
VFS: fs_name = <ext2>
VFS: fs_name = <romfs>
VFS: root name <1f:00>
*******
VFS: tried fs_name = <ext2> err= -22(-EINVAL,so it continue to
try mount romfs)
case -EBUSY & EINVAL
VFS: tried fs_name = <romfs> err= 0
case 0
but in a 2.6.9 kernel have this result:
*******
VFS: test name = </dev/root>
VFS: fs_name = <ext2>
VFS: fs_name = <romfs>
VFS: tried fs_name = <ext2> err= -14 (-EFAULT,it directly go to
the failure handle)
VFS: Cannot open root device "ram0" or unknown-block(0,0)
Please append a correct "root=" boot option
Kernel panic - not syncing: 1VFS: Unable to mount root fs on
unknown-block(0,0)
***********************
thanks!
rui
_______________________________________________
uClinux-dev mailing list
[email protected]
http://mailman.uclinux.org/mailman/listinfo/uclinux-dev
This message was resent by [email protected]
To unsubscribe see:
http://mailman.uclinux.org/mailman/options/uclinux-dev