summaryrefslogtreecommitdiff
path: root/fs/ext2
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@home.transmeta.com>2002-02-17 17:02:13 -0800
committerLinus Torvalds <torvalds@home.transmeta.com>2002-02-17 17:02:13 -0800
commit2796576e0cff656d34368221121729846b4e1de5 (patch)
treef5dc91b6f800bb80d201e5abea8238ddd89612f5 /fs/ext2
parent98d809e7d3f9f3c04a8b67d3de21a2d4f50af26b (diff)
parent071c9b22a256c3a08aeb73dc64f7b8613a2fc02c (diff)
Merge home.transmeta.com:/home/torvalds/v2.5/morton
into home.transmeta.com:/home/torvalds/v2.5/linux
Diffstat (limited to 'fs/ext2')
-rw-r--r--fs/ext2/dir.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/fs/ext2/dir.c b/fs/ext2/dir.c
index d6416b9484f3..c11482c94ed5 100644
--- a/fs/ext2/dir.c
+++ b/fs/ext2/dir.c
@@ -52,8 +52,13 @@ static int ext2_commit_chunk(struct page *page, unsigned from, unsigned to)
int err = 0;
dir->i_version = ++event;
page->mapping->a_ops->commit_write(NULL, page, from, to);
- if (IS_SYNC(dir))
- err = waitfor_one_page(page);
+ if (IS_SYNC(dir)) {
+ int err2;
+ err = writeout_one_page(page);
+ err2 = waitfor_one_page(page);
+ if (err == 0)
+ err = err2;
+ }
return err;
}