nilfs2: move cleanup code of metadata file from inode routines
[deliverable/linux.git] / fs / nilfs2 / super.c
index 2ed3e4008e72590820c8f954caabe07ab1f70b5b..2cb78b857df6f684e4d62c399b3eb8f0f53b9396 100644 (file)
@@ -169,12 +169,10 @@ struct inode *nilfs_alloc_inode(struct super_block *sb)
 static void nilfs_i_callback(struct rcu_head *head)
 {
        struct inode *inode = container_of(head, struct inode, i_rcu);
-       struct nilfs_mdt_info *mdi = NILFS_MDT(inode);
 
-       if (mdi) {
-               kfree(mdi->mi_bgl); /* kfree(NULL) is safe */
-               kfree(mdi);
-       }
+       if (nilfs_is_metadata_file_inode(inode))
+               nilfs_mdt_destroy(inode);
+
        kmem_cache_free(nilfs_inode_cachep, NILFS_I(inode));
 }
 
This page took 0.02395 seconds and 5 git commands to generate.