Hi Richard,
current init/do_mounts.c contains the devfs_make_root/convert_name
functions which provide compatiblility for the old, pre kernel-merge
devfs naming scheme in the root= kernel command line.
As this was never present in official kernels there is really no need
in keeping it - it just bloats the kernel.
Could you please forward this patch to Linus and maybe Marcelo with
your next devfs update?
Christoph
-- --- 1.14/init/do_mounts.c Sun May 5 18:35:44 2002 +++ edited/init/do_mounts.c Sat May 11 18:32:17 2002 @@ -636,63 +636,6 @@ return rd_load_image("/dev/root"); } -#ifdef CONFIG_DEVFS_FS - -static void __init convert_name(char *prefix, char *name, char *p, int part) -{ - int host, bus, target, lun; - char dest[64]; - char src[64]; - char *base = p - 1; - - /* Decode "c#b#t#u#" */ - if (*p++ != 'c') - return; - host = simple_strtol(p, &p, 10); - if (*p++ != 'b') - return; - bus = simple_strtol(p, &p, 10); - if (*p++ != 't') - return; - target = simple_strtol(p, &p, 10); - if (*p++ != 'u') - return; - lun = simple_strtol(p, &p, 10); - if (!part) - sprintf(dest, "%s/host%d/bus%d/target%d/lun%d", - prefix, host, bus, target, lun); - else if (*p++ == 'p') - sprintf(dest, "%s/host%d/bus%d/target%d/lun%d/part%s", - prefix, host, bus, target, lun, p); - else - sprintf(dest, "%s/host%d/bus%d/target%d/lun%d/disc", - prefix, host, bus, target, lun); - *base = '\0'; - sprintf(src, "/dev/%s", name); - sys_mkdir(src, 0755); - *base = '/'; - sprintf(src, "/dev/%s", name); - sys_symlink(dest, src); -} - -static void __init devfs_make_root(char *name) -{ - - if (!strncmp(name, "sd/", 3)) - convert_name("../scsi", name, name+3, 1); - else if (!strncmp(name, "sr/", 3)) - convert_name("../scsi", name, name+3, 0); - else if (!strncmp(name, "ide/hd/", 7)) - convert_name("..", name, name + 7, 1); - else if (!strncmp(name, "ide/cd/", 7)) - convert_name("..", name, name + 7, 0); -} -#else -static void __init devfs_make_root(char *name) -{ -} -#endif - static void __init mount_root(void) { #ifdef CONFIG_ROOT_NFS @@ -707,7 +650,6 @@ ROOT_DEV = mk_kdev(FLOPPY_MAJOR, 0); } #endif - devfs_make_root(root_device_name); create_dev("/dev/root", ROOT_DEV, root_device_name); #ifdef CONFIG_BLK_DEV_FD if (major(ROOT_DEV) == FLOPPY_MAJOR) { - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Tue May 14 2002 - 12:00:23 EST