summaryrefslogtreecommitdiff
path: root/fs/fs-writeback.c
diff options
context:
space:
mode:
authorMike Galbraith <efault@gmx.de>2008-02-08 15:20:23 +0300
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2008-02-08 20:22:34 +0300
commit18914b1884ebdbcd4d4454100502a23d1d2dba43 (patch)
treee52412029b3c0d977e12454feb2a13f8415df6d9 /fs/fs-writeback.c
parentabe8be3abe4c2043bd766f32d7eba62c12dbb0b3 (diff)
downloadlinux-18914b1884ebdbcd4d4454100502a23d1d2dba43.tar.xz
write_inode_now(): avoid unnecessary synchronous write
We shouldn't use WB_SYNC_ALL if the caller is asking for asynchronous treatment. Signed-off-by: Mike Galbraith <efault@gmx.de> Acked-by: Jan Kara <jack@suse.cz> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'fs/fs-writeback.c')
-rw-r--r--fs/fs-writeback.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/fs-writeback.c b/fs/fs-writeback.c
index db80ce9eb1d0..c0076077d338 100644
--- a/fs/fs-writeback.c
+++ b/fs/fs-writeback.c
@@ -655,7 +655,7 @@ int write_inode_now(struct inode *inode, int sync)
int ret;
struct writeback_control wbc = {
.nr_to_write = LONG_MAX,
- .sync_mode = WB_SYNC_ALL,
+ .sync_mode = sync ? WB_SYNC_ALL : WB_SYNC_NONE,
.range_start = 0,
.range_end = LLONG_MAX,
};