aboutsummaryrefslogtreecommitdiffstats
path: root/fs/xfs/linux-2.6/xfs_super.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@woody.linux-foundation.org>2007-09-19 11:40:13 -0700
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-09-19 11:40:13 -0700
commita78feb7c8a0687913f9869c05811054595a42a76 (patch)
treeb89ceba977943e58475e28cf6acd6377a8d84320 /fs/xfs/linux-2.6/xfs_super.c
parent91fe7d7cdd7ebb0b6c01f201a23824ab5b466ada (diff)
parentb394e43e995d08821588a22561c6a71a63b4ff27 (diff)
downloadkernel_samsung_smdk4412-a78feb7c8a0687913f9869c05811054595a42a76.tar.gz
kernel_samsung_smdk4412-a78feb7c8a0687913f9869c05811054595a42a76.tar.bz2
kernel_samsung_smdk4412-a78feb7c8a0687913f9869c05811054595a42a76.zip
Merge branch 'for-linus' of git://oss.sgi.com:8090/xfs/xfs-2.6
* 'for-linus' of git://oss.sgi.com:8090/xfs/xfs-2.6: [XFS] Avoid replaying inode buffer initialisation log items if on-disk version is newer. [XFS] Ensure file size updates have been completed before writing inode to disk. [XFS] On-demand reaping of the MRU cache
Diffstat (limited to 'fs/xfs/linux-2.6/xfs_super.c')
-rw-r--r--fs/xfs/linux-2.6/xfs_super.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/xfs/linux-2.6/xfs_super.c b/fs/xfs/linux-2.6/xfs_super.c
index 4528f9a3f30..491d1f4f202 100644
--- a/fs/xfs/linux-2.6/xfs_super.c
+++ b/fs/xfs/linux-2.6/xfs_super.c
@@ -415,8 +415,10 @@ xfs_fs_write_inode(
if (vp) {
vn_trace_entry(vp, __FUNCTION__, (inst_t *)__return_address);
- if (sync)
+ if (sync) {
+ filemap_fdatawait(inode->i_mapping);
flags |= FLUSH_SYNC;
+ }
error = bhv_vop_iflush(vp, flags);
if (error == EAGAIN)
error = sync? bhv_vop_iflush(vp, flags | FLUSH_LOG) : 0;