Russell King investigated a failure case I introduced: When booting
with "load_ramdisk=1", we use the kernel root= parameter to determine
from what device to get the contents to copy into a ramdisk and then
mount that ramdisk as root.
For the copy to work, /dev/root needs to point to the device to load the
ramdisk from.
int __initdata rd_doload; /* 1 = load RAM disk, 0 = don't load */
int root_mountflags = MS_RDONLY | MS_VERBOSE;
-static char * __initdata root_device_name;
+char * __initdata root_device_name;
static char __initdata saved_root_name[64];
/* this is initialized in init/main.c */
void mount_block_root(char *name, int flags);
void mount_root(void);
extern int root_mountflags;
+extern char *root_device_name;
#ifdef CONFIG_DEVFS_FS
{
if (rd_prompt)
change_floppy("root floppy disk to be loaded into RAM disk");
+ create_dev("/dev/root", ROOT_DEV, root_device_name);
create_dev("/dev/ram", MKDEV(RAMDISK_MAJOR, n), NULL);
return rd_load_image("/dev/root");
}