diff options
-rw-r--r-- | fs/ext3/super.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/fs/ext3/super.c b/fs/ext3/super.c index b70d90e08a3c..4a970411a458 100644 --- a/fs/ext3/super.c +++ b/fs/ext3/super.c | |||
@@ -2428,12 +2428,13 @@ static void ext3_write_super (struct super_block * sb) | |||
2428 | 2428 | ||
2429 | static int ext3_sync_fs(struct super_block *sb, int wait) | 2429 | static int ext3_sync_fs(struct super_block *sb, int wait) |
2430 | { | 2430 | { |
2431 | sb->s_dirt = 0; | 2431 | tid_t target; |
2432 | if (wait) | ||
2433 | ext3_force_commit(sb); | ||
2434 | else | ||
2435 | journal_start_commit(EXT3_SB(sb)->s_journal, NULL); | ||
2436 | 2432 | ||
2433 | sb->s_dirt = 0; | ||
2434 | if (journal_start_commit(EXT3_SB(sb)->s_journal, &target)) { | ||
2435 | if (wait) | ||
2436 | log_wait_commit(EXT3_SB(sb)->s_journal, target); | ||
2437 | } | ||
2437 | return 0; | 2438 | return 0; |
2438 | } | 2439 | } |
2439 | 2440 | ||