aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--fs/nilfs2/inode.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/fs/nilfs2/inode.c b/fs/nilfs2/inode.c
index eccb2f2e2315..f1750caa362c 100644
--- a/fs/nilfs2/inode.c
+++ b/fs/nilfs2/inode.c
@@ -808,6 +808,7 @@ int nilfs_mark_inode_dirty(struct inode *inode)
808void nilfs_dirty_inode(struct inode *inode) 808void nilfs_dirty_inode(struct inode *inode)
809{ 809{
810 struct nilfs_transaction_info ti; 810 struct nilfs_transaction_info ti;
811 struct nilfs_mdt_info *mdi = NILFS_MDT(inode);
811 812
812 if (is_bad_inode(inode)) { 813 if (is_bad_inode(inode)) {
813 nilfs_warning(inode->i_sb, __func__, 814 nilfs_warning(inode->i_sb, __func__,
@@ -815,6 +816,10 @@ void nilfs_dirty_inode(struct inode *inode)
815 dump_stack(); 816 dump_stack();
816 return; 817 return;
817 } 818 }
819 if (mdi) {
820 nilfs_mdt_mark_dirty(inode);
821 return;
822 }
818 nilfs_transaction_begin(inode->i_sb, &ti, 0); 823 nilfs_transaction_begin(inode->i_sb, &ti, 0);
819 nilfs_mark_inode_dirty(inode); 824 nilfs_mark_inode_dirty(inode);
820 nilfs_transaction_commit(inode->i_sb); /* never fails */ 825 nilfs_transaction_commit(inode->i_sb); /* never fails */