summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2012-02-13 03:56:08 +0100
committerAl Viro <viro@zeniv.linux.org.uk>2012-03-21 02:29:34 +0100
commit6b4231e2f92adbcf96fb2a3fa751d7ca0a61b21f (patch)
treee4ede05b2253e6bc333b007b2550bd9503e0a98f /fs
parent... and the same failure exits cleanup for ocfs2 (diff)
downloadlinux-6b4231e2f92adbcf96fb2a3fa751d7ca0a61b21f.tar.xz
linux-6b4231e2f92adbcf96fb2a3fa751d7ca0a61b21f.zip
procfs: clean proc_fill_super() up
First of all, there's no need to zero ->i_uid/->i_gid on root inode - both had been set to zero already. Moreover, let's take the iput() on failure to the failure exit it belongs to... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs')
-rw-r--r--fs/proc/inode.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/fs/proc/inode.c b/fs/proc/inode.c
index 84fd3235a590..a70af3a44f45 100644
--- a/fs/proc/inode.c
+++ b/fs/proc/inode.c
@@ -499,16 +499,15 @@ int proc_fill_super(struct super_block *s)
root_inode = proc_get_inode(s, &proc_root);
if (!root_inode)
goto out_no_root;
- root_inode->i_uid = 0;
- root_inode->i_gid = 0;
s->s_root = d_alloc_root(root_inode);
- if (!s->s_root)
+ if (!s->s_root) {
+ iput(root_inode);
goto out_no_root;
+ }
return 0;
out_no_root:
printk("proc_read_super: get root inode failed\n");
- iput(root_inode);
pde_put(&proc_root);
return -ENOMEM;
}