tidy up after d_make_root() conversion
authorAl Viro <viro@zeniv.linux.org.uk>
Mon, 13 Feb 2012 03:08:01 +0000 (22:08 -0500)
committerAl Viro <viro@zeniv.linux.org.uk>
Wed, 21 Mar 2012 01:29:37 +0000 (21:29 -0400)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
drivers/misc/ibmasm/ibmasmfs.c
drivers/oprofile/oprofilefs.c
drivers/usb/core/inode.c
fs/pstore/inode.c
fs/ramfs/inode.c
mm/shmem.c

index 15f24f3..1c034b8 100644 (file)
@@ -87,7 +87,7 @@
 static LIST_HEAD(service_processors);
 
 static struct inode *ibmasmfs_make_inode(struct super_block *sb, int mode);
-static void ibmasmfs_create_files (struct super_block *sb, struct dentry *root);
+static void ibmasmfs_create_files (struct super_block *sb);
 static int ibmasmfs_fill_super (struct super_block *sb, void *data, int silent);
 
 
@@ -114,7 +114,6 @@ static struct file_system_type ibmasmfs_type = {
 static int ibmasmfs_fill_super (struct super_block *sb, void *data, int silent)
 {
        struct inode *root;
-       struct dentry *root_dentry;
 
        sb->s_blocksize = PAGE_CACHE_SIZE;
        sb->s_blocksize_bits = PAGE_CACHE_SHIFT;
@@ -129,12 +128,11 @@ static int ibmasmfs_fill_super (struct super_block *sb, void *data, int silent)
        root->i_op = &simple_dir_inode_operations;
        root->i_fop = ibmasmfs_dir_ops;
 
-       root_dentry = d_make_root(root);
-       if (!root_dentry)
+       sb->s_root = d_make_root(root);
+       if (!sb->s_root)
                return -ENOMEM;
-       sb->s_root = root_dentry;
 
-       ibmasmfs_create_files(sb, root_dentry);
+       ibmasmfs_create_files(sb);
        return 0;
 }
 
@@ -610,7 +608,7 @@ static const struct file_operations remote_settings_fops = {
 };
 
 
-static void ibmasmfs_create_files (struct super_block *sb, struct dentry *root)
+static void ibmasmfs_create_files (struct super_block *sb)
 {
        struct list_head *entry;
        struct service_processor *sp;
@@ -619,7 +617,7 @@ static void ibmasmfs_create_files (struct super_block *sb, struct dentry *root)
                struct dentry *dir;
                struct dentry *remote_dir;
                sp = list_entry(entry, struct service_processor, node);
-               dir = ibmasmfs_create_dir(sb, root, sp->dirname);
+               dir = ibmasmfs_create_dir(sb, sb->s_root, sp->dirname);
                if (!dir)
                        continue;
 
index 277bb70..ee8fd03 100644 (file)
@@ -238,7 +238,6 @@ struct dentry *oprofilefs_mkdir(struct super_block *sb,
 static int oprofilefs_fill_super(struct super_block *sb, void *data, int silent)
 {
        struct inode *root_inode;
-       struct dentry *root_dentry;
 
        sb->s_blocksize = PAGE_CACHE_SIZE;
        sb->s_blocksize_bits = PAGE_CACHE_SHIFT;
@@ -251,13 +250,11 @@ static int oprofilefs_fill_super(struct super_block *sb, void *data, int silent)
                return -ENOMEM;
        root_inode->i_op = &simple_dir_inode_operations;
        root_inode->i_fop = &simple_dir_operations;
-       root_dentry = d_make_root(root_inode);
-       if (!root_dentry)
+       sb->s_root = d_make_root(root_inode);
+       if (!sb->s_root)
                return -ENOMEM;
 
-       sb->s_root = root_dentry;
-
-       oprofile_create_files(sb, root_dentry);
+       oprofile_create_files(sb, sb->s_root);
 
        // FIXME: verify kill_litter_super removes our dentries
        return 0;
index bdaef8e..06c175a 100644 (file)
@@ -454,7 +454,6 @@ static const struct super_operations usbfs_ops = {
 static int usbfs_fill_super(struct super_block *sb, void *data, int silent)
 {
        struct inode *inode;
-       struct dentry *root;
 
        sb->s_blocksize = PAGE_CACHE_SIZE;
        sb->s_blocksize_bits = PAGE_CACHE_SHIFT;
@@ -462,12 +461,11 @@ static int usbfs_fill_super(struct super_block *sb, void *data, int silent)
        sb->s_op = &usbfs_ops;
        sb->s_time_gran = 1;
        inode = usbfs_get_inode(sb, S_IFDIR | 0755, 0);
-       root = d_make_root(inode);
-       if (!root) {
+       sb->s_root = d_make_root(inode);
+       if (!sb->s_root) {
                dbg("%s: could not get root dentry!",__func__);
                return -ENOMEM;
        }
-       sb->s_root = root;
        return 0;
 }
 
index ec7d1fb..f37c32b 100644 (file)
@@ -278,9 +278,7 @@ fail:
 
 int pstore_fill_super(struct super_block *sb, void *data, int silent)
 {
-       struct inode *inode = NULL;
-       struct dentry *root;
-       int err;
+       struct inode *inode;
 
        save_mount_options(sb, data);
 
@@ -296,25 +294,17 @@ int pstore_fill_super(struct super_block *sb, void *data, int silent)
        parse_options(data);
 
        inode = pstore_get_inode(sb, NULL, S_IFDIR | 0755, 0);
-       if (!inode) {
-               err = -ENOMEM;
-               goto fail;
-       }
-       /* override ramfs "dir" options so we catch unlink(2) */
-       inode->i_op = &pstore_dir_inode_operations;
-
-       root = d_make_root(inode);
-       sb->s_root = root;
-       if (!root) {
-               err = -ENOMEM;
-               goto fail;
+       if (inode) {
+               /* override ramfs "dir" options so we catch unlink(2) */
+               inode->i_op = &pstore_dir_inode_operations;
        }
+       sb->s_root = d_make_root(inode);
+       if (!sb->s_root)
+               return -ENOMEM;
 
        pstore_get_records(0);
 
        return 0;
-fail:
-       return err;
 }
 
 static struct dentry *pstore_mount(struct file_system_type *fs_type,
index b6612d2..a1fdabe 100644 (file)
@@ -209,21 +209,19 @@ static int ramfs_parse_options(char *data, struct ramfs_mount_opts *opts)
 int ramfs_fill_super(struct super_block *sb, void *data, int silent)
 {
        struct ramfs_fs_info *fsi;
-       struct inode *inode = NULL;
+       struct inode *inode;
        int err;
 
        save_mount_options(sb, data);
 
        fsi = kzalloc(sizeof(struct ramfs_fs_info), GFP_KERNEL);
        sb->s_fs_info = fsi;
-       if (!fsi) {
-               err = -ENOMEM;
-               goto fail;
-       }
+       if (!fsi)
+               return -ENOMEM;
 
        err = ramfs_parse_options(data, &fsi->mount_opts);
        if (err)
-               goto fail;
+               return err;
 
        sb->s_maxbytes          = MAX_LFS_FILESIZE;
        sb->s_blocksize         = PAGE_CACHE_SIZE;
@@ -234,16 +232,10 @@ int ramfs_fill_super(struct super_block *sb, void *data, int silent)
 
        inode = ramfs_get_inode(sb, NULL, S_IFDIR | fsi->mount_opts.mode, 0);
        sb->s_root = d_make_root(inode);
-       if (!sb->s_root) {
-               err = -ENOMEM;
-               goto fail;
-       }
+       if (!sb->s_root)
+               return -ENOMEM;
 
        return 0;
-fail:
-       kfree(fsi);
-       sb->s_fs_info = NULL;
-       return err;
 }
 
 struct dentry *ramfs_mount(struct file_system_type *fs_type,
index 154243f..9bc4a23 100644 (file)
@@ -2175,7 +2175,6 @@ static void shmem_put_super(struct super_block *sb)
 int shmem_fill_super(struct super_block *sb, void *data, int silent)
 {
        struct inode *inode;
-       struct dentry *root;
        struct shmem_sb_info *sbinfo;
        int err = -ENOMEM;
 
@@ -2232,10 +2231,9 @@ int shmem_fill_super(struct super_block *sb, void *data, int silent)
                goto failed;
        inode->i_uid = sbinfo->uid;
        inode->i_gid = sbinfo->gid;
-       root = d_make_root(inode);
-       if (!root)
+       sb->s_root = d_make_root(inode);
+       if (!sb->s_root)
                goto failed;
-       sb->s_root = root;
        return 0;
 
 failed: