summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2010-01-26 02:30:38 +0300
committerAl Viro <viro@zeniv.linux.org.uk>2010-03-03 22:07:54 +0300
commitfc7bed8c802de3b064a56a43ec8574aa8d412de3 (patch)
tree8f4836dd8db3f6748bd813b1f746af6fa6328859
parent5b7e934d887c67fe093b61f1308bc2d9c49381ff (diff)
downloadlinux-fc7bed8c802de3b064a56a43ec8574aa8d412de3.tar.xz
Don't bother with d_genocide in rpc_pipe
kill_litter_super() from ->kill_sb() will take care of the junk
-rw-r--r--net/sunrpc/rpc_pipe.c9
1 files changed, 2 insertions, 7 deletions
diff --git a/net/sunrpc/rpc_pipe.c b/net/sunrpc/rpc_pipe.c
index 49278f830367..9ac493fcc873 100644
--- a/net/sunrpc/rpc_pipe.c
+++ b/net/sunrpc/rpc_pipe.c
@@ -999,19 +999,14 @@ rpc_fill_super(struct super_block *sb, void *data, int silent)
inode = rpc_get_inode(sb, S_IFDIR | 0755);
if (!inode)
return -ENOMEM;
- root = d_alloc_root(inode);
+ sb->s_root = root = d_alloc_root(inode);
if (!root) {
iput(inode);
return -ENOMEM;
}
if (rpc_populate(root, files, RPCAUTH_lockd, RPCAUTH_RootEOF, NULL))
- goto out;
- sb->s_root = root;
+ return -ENOMEM;
return 0;
-out:
- d_genocide(root);
- dput(root);
- return -ENOMEM;
}
static int