nilfs2: separate initializer of metadata file inode
This separates a part of initialization code of metadata file inode,
and makes it available from the nilfs iget function that a later patch
will add to.
Signed-off-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
diff --git a/fs/nilfs2/gcinode.c b/fs/nilfs2/gcinode.c
index bed3a78..cd19a37 100644
--- a/fs/nilfs2/gcinode.c
+++ b/fs/nilfs2/gcinode.c
@@ -225,10 +225,14 @@
struct inode *inode;
struct nilfs_inode_info *ii;
- inode = nilfs_mdt_new_common(nilfs, NULL, ino, GFP_NOFS, 0);
+ inode = nilfs_mdt_new_common(nilfs, NULL, ino);
if (!inode)
return NULL;
+ if (nilfs_mdt_init(inode, nilfs, GFP_NOFS, 0) < 0) {
+ nilfs_destroy_inode(inode);
+ return NULL;
+ }
inode->i_op = NULL;
inode->i_fop = NULL;
inode->i_mapping->a_ops = &def_gcinode_aops;