aboutsummaryrefslogtreecommitdiffstats
path: root/fs/freevxfs/vxfs_super.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/freevxfs/vxfs_super.c')
-rw-r--r--fs/freevxfs/vxfs_super.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/fs/freevxfs/vxfs_super.c b/fs/freevxfs/vxfs_super.c
index 4f95572d2722..1dacda831577 100644
--- a/fs/freevxfs/vxfs_super.c
+++ b/fs/freevxfs/vxfs_super.c
@@ -60,7 +60,6 @@ static int vxfs_statfs(struct dentry *, struct kstatfs *);
60static int vxfs_remount(struct super_block *, int *, char *); 60static int vxfs_remount(struct super_block *, int *, char *);
61 61
62static const struct super_operations vxfs_super_ops = { 62static const struct super_operations vxfs_super_ops = {
63 .read_inode = vxfs_read_inode,
64 .clear_inode = vxfs_clear_inode, 63 .clear_inode = vxfs_clear_inode,
65 .put_super = vxfs_put_super, 64 .put_super = vxfs_put_super,
66 .statfs = vxfs_statfs, 65 .statfs = vxfs_statfs,
@@ -153,6 +152,7 @@ static int vxfs_fill_super(struct super_block *sbp, void *dp, int silent)
153 struct buffer_head *bp = NULL; 152 struct buffer_head *bp = NULL;
154 u_long bsize; 153 u_long bsize;
155 struct inode *root; 154 struct inode *root;
155 int ret = -EINVAL;
156 156
157 sbp->s_flags |= MS_RDONLY; 157 sbp->s_flags |= MS_RDONLY;
158 158
@@ -219,7 +219,11 @@ static int vxfs_fill_super(struct super_block *sbp, void *dp, int silent)
219 } 219 }
220 220
221 sbp->s_op = &vxfs_super_ops; 221 sbp->s_op = &vxfs_super_ops;
222 root = iget(sbp, VXFS_ROOT_INO); 222 root = vxfs_iget(sbp, VXFS_ROOT_INO);
223 if (IS_ERR(root)) {
224 ret = PTR_ERR(root);
225 goto out;
226 }
223 sbp->s_root = d_alloc_root(root); 227 sbp->s_root = d_alloc_root(root);
224 if (!sbp->s_root) { 228 if (!sbp->s_root) {
225 iput(root); 229 iput(root);
@@ -236,7 +240,7 @@ out_free_ilist:
236out: 240out:
237 brelse(bp); 241 brelse(bp);
238 kfree(infp); 242 kfree(infp);
239 return -EINVAL; 243 return ret;
240} 244}
241 245
242/* 246/*