|
@@ -808,6 +808,7 @@ int nilfs_mark_inode_dirty(struct inode *inode)
|
|
|
void nilfs_dirty_inode(struct inode *inode)
|
|
|
{
|
|
|
struct nilfs_transaction_info ti;
|
|
|
+ struct nilfs_mdt_info *mdi = NILFS_MDT(inode);
|
|
|
|
|
|
if (is_bad_inode(inode)) {
|
|
|
nilfs_warning(inode->i_sb, __func__,
|
|
@@ -815,6 +816,10 @@ void nilfs_dirty_inode(struct inode *inode)
|
|
|
dump_stack();
|
|
|
return;
|
|
|
}
|
|
|
+ if (mdi) {
|
|
|
+ nilfs_mdt_mark_dirty(inode);
|
|
|
+ return;
|
|
|
+ }
|
|
|
nilfs_transaction_begin(inode->i_sb, &ti, 0);
|
|
|
nilfs_mark_inode_dirty(inode);
|
|
|
nilfs_transaction_commit(inode->i_sb); /* never fails */
|