diff options
author | Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> | 2010-08-21 00:30:39 +0900 |
---|---|---|
committer | Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp> | 2010-10-23 09:24:33 +0900 |
commit | 7d6cd92fe2de3c286b8e95f43223f09db9302635 (patch) | |
tree | 24aded0ed7e0cd73c6930209a2d47df42b775d73 /fs/nilfs2 | |
parent | b91c9a97c9333c87fe2a0c94b3b22b24df1c5fc2 (diff) | |
download | blackbird-op-linux-7d6cd92fe2de3c286b8e95f43223f09db9302635.tar.gz blackbird-op-linux-7d6cd92fe2de3c286b8e95f43223f09db9302635.zip |
nilfs2: allow nilfs_dirty_inode to mark metadata file inodes dirty
This allows sop->dirty_inode callback function (nilfs_dirty_inode) to
handle metadata file inodes.
Signed-off-by: Ryusuke Konishi <konishi.ryusuke@lab.ntt.co.jp>
Diffstat (limited to 'fs/nilfs2')
-rw-r--r-- | fs/nilfs2/inode.c | 5 |
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) 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 */ |