From: Christoph Hellwig There may be multiple gendisks with the same .devfs_name in scsi and we call devfs_mk_dir on each of them. At present that causes a nasty error message. It is better to permit devfs_mk_dir() to appear to have succeeded. ie: it's a `mkdir -p'. fs/devfs/base.c | 9 ++++++++- 1 files changed, 8 insertions(+), 1 deletion(-) diff -puN fs/devfs/base.c~devfs_mk_dir-fix fs/devfs/base.c --- 25/fs/devfs/base.c~devfs_mk_dir-fix 2003-06-10 23:33:24.000000000 -0700 +++ 25-akpm/fs/devfs/base.c 2003-06-10 23:33:24.000000000 -0700 @@ -1684,7 +1684,14 @@ int devfs_mk_dir(const char *fmt, ...) } error = _devfs_append_entry(dir, de, &old); - if (error) { + if (error == -EEXIST) { + /* + * devfs_mk_dir() of an already-existing directory will + * return success. + */ + error = 0; + devfs_put(old); + } else if (error) { PRINTK("(%s): could not append to dir: %p \"%s\"\n", buf, dir, dir->name); devfs_put(old); _