]> git.hungrycats.org Git - linux/commitdiff
[PATCH] fix devfs_mk_dir prototype
authorChristoph Hellwig <hch@lst.de>
Wed, 23 Apr 2003 11:28:03 +0000 (04:28 -0700)
committerChristoph Hellwig <hch@lst.de>
Wed, 23 Apr 2003 11:28:03 +0000 (04:28 -0700)
Return an error code instead of a devfs_handle_t.  The handle isn't
useful for anything and the !CONFIG_DEVFS_FS stub in fact returned
NULL which made it entirely useless.  Thus only one driver is actually
checking the retval in the current tree..

drivers/s390/block/dasd.c
fs/devfs/base.c
include/linux/devfs_fs_kernel.h

index 43b06070bed721b0123a07285169e29512af3943..acefa5692a365cd6ffa93c41a272ab86df4cfde4 100644 (file)
@@ -2055,13 +2055,9 @@ dasd_init(void)
 
        DBF_EVENT(DBF_EMERG, "%s", "debug area created");
 
-#ifdef CONFIG_DEVFS_FS
-       if (!devfs_mk_dir("dasd")) {
-               DBF_EVENT(DBF_ALERT, "%s", "no devfs");
-               rc = -ENOSYS;
+       rc = devfs_mk_dir("dasd");
+       if (rc)
                goto failed;
-       }
-#endif
        rc = dasd_devmap_init();
        if (rc)
                goto failed;
index a0d3ea54a440974bc21ddf53bc558b7bfc780d4e..30efb7302ec6864ae04ac0ae222102a64228a314 100644 (file)
@@ -1708,41 +1708,39 @@ int devfs_mk_symlink(const char *from, const char *to)
  *     On failure %NULL is returned.
  */
 
-devfs_handle_t devfs_mk_dir(const char *fmt, ...)
+int devfs_mk_dir(const char *fmt, ...)
 {
        struct devfs_entry *dir = NULL, *de = NULL, *old;
        char buf[64];
        va_list args;
-       int n;
+       int error, n;
 
        va_start(args, fmt);
        n = vsnprintf(buf, 64, fmt, args);
        if (n >= 64 || !buf[0]) {
                printk(KERN_WARNING "%s: invalid argument.", __FUNCTION__);
-               return NULL;
+               return -EINVAL;
        }
 
        de = _devfs_prepare_leaf(&dir, buf, MODE_DIR);
        if (!de) {
                PRINTK("(%s): could not prepare leaf\n", buf);
-               return NULL;
+               return -EINVAL;
        }
 
-       de->info = NULL;
-       if (_devfs_append_entry(dir, de, &old)) {
+       error = _devfs_append_entry(dir, de, &old);
+       if (error) {
                PRINTK("(%s): could not append to dir: %p \"%s\"\n",
                                buf, dir, dir->name);
                devfs_put(old);
                goto out_put;
        }
        
-       DPRINTK(DEBUG_REGISTER, "(%s): de: %p dir: %p \"%s\"\n",
-                       buf, de, dir, dir->name);
        devfsd_notify(de, DEVFSD_NOTIFY_REGISTERED);
 
  out_put:
        devfs_put(dir);
-       return de;
+       return error;
 }
 
 
index a45a4060236d83f7838f5db688ae85786644000a..c0bc8f221053400431501a7a381388dbdc530c84 100644 (file)
@@ -27,8 +27,8 @@ extern devfs_handle_t devfs_register (devfs_handle_t dir, const char *name,
                                      umode_t mode, void *ops, void *info);
 extern int devfs_mk_bdev(dev_t dev, umode_t mode, const char *fmt, ...)
        __attribute__((format (printf, 3, 4)));
-extern int devfs_mk_symlink (const char *name, const char *link);
-extern devfs_handle_t devfs_mk_dir(const char *fmt, ...)
+extern int devfs_mk_symlink(const char *name, const char *link);
+extern int devfs_mk_dir(const char *fmt, ...)
        __attribute__((format (printf, 1, 2)));
 extern void devfs_remove(const char *fmt, ...)
        __attribute__((format (printf, 1, 2)));
@@ -55,9 +55,9 @@ static inline int devfs_mk_symlink (const char *name, const char *link)
 {
     return 0;
 }
-static inline devfs_handle_t devfs_mk_dir(const char *fmt, ...)
+static inline int devfs_mk_dir(const char *fmt, ...)
 {
-    return NULL;
+       return 0;
 }
 static inline void devfs_remove(const char *fmt, ...)
 {