aboutsummaryrefslogtreecommitdiffstats
path: root/ipc
diff options
context:
space:
mode:
authorAl Viro <viro@zeniv.linux.org.uk>2012-01-08 22:15:13 -0500
committerAl Viro <viro@zeniv.linux.org.uk>2012-03-20 21:29:35 -0400
commit48fde701aff662559b38d9a609574068f22d00fe (patch)
treeaa6b203dc671b51d58575b65eb08310ff8309b60 /ipc
parent6b4231e2f92adbcf96fb2a3fa751d7ca0a61b21f (diff)
switch open-coded instances of d_make_root() to new helper
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'ipc')
-rw-r--r--ipc/mqueue.c24
1 files changed, 7 insertions, 17 deletions
diff --git a/ipc/mqueue.c b/ipc/mqueue.c
index 86ee272de210..28bd64ddeda3 100644
--- a/ipc/mqueue.c
+++ b/ipc/mqueue.c
@@ -188,30 +188,20 @@ static int mqueue_fill_super(struct super_block *sb, void *data, int silent)
188{ 188{
189 struct inode *inode; 189 struct inode *inode;
190 struct ipc_namespace *ns = data; 190 struct ipc_namespace *ns = data;
191 int error;
192 191
193 sb->s_blocksize = PAGE_CACHE_SIZE; 192 sb->s_blocksize = PAGE_CACHE_SIZE;
194 sb->s_blocksize_bits = PAGE_CACHE_SHIFT; 193 sb->s_blocksize_bits = PAGE_CACHE_SHIFT;
195 sb->s_magic = MQUEUE_MAGIC; 194 sb->s_magic = MQUEUE_MAGIC;
196 sb->s_op = &mqueue_super_ops; 195 sb->s_op = &mqueue_super_ops;
197 196
198 inode = mqueue_get_inode(sb, ns, S_IFDIR | S_ISVTX | S_IRWXUGO, 197 inode = mqueue_get_inode(sb, ns, S_IFDIR | S_ISVTX | S_IRWXUGO, NULL);
199 NULL); 198 if (IS_ERR(inode))
200 if (IS_ERR(inode)) { 199 return PTR_ERR(inode);
201 error = PTR_ERR(inode);
202 goto out;
203 }
204 200
205 sb->s_root = d_alloc_root(inode); 201 sb->s_root = d_make_root(inode);
206 if (!sb->s_root) { 202 if (!sb->s_root)
207 iput(inode); 203 return -ENOMEM;
208 error = -ENOMEM; 204 return 0;
209 goto out;
210 }
211 error = 0;
212
213out:
214 return error;
215} 205}
216 206
217static struct dentry *mqueue_mount(struct file_system_type *fs_type, 207static struct dentry *mqueue_mount(struct file_system_type *fs_type,