ext4_journal: flush transactions on cp_queue with another method.
authorngkaho1234 <ngkaho1234@gmail.com>
Mon, 21 Dec 2015 16:07:44 +0000 (00:07 +0800)
committerngkaho1234 <ngkaho1234@gmail.com>
Mon, 21 Dec 2015 16:07:44 +0000 (00:07 +0800)
In the past, transactions on checkpoint queue are flushed by
ext4_block_cache_flush routine.

lwext4/ext4_journal.c

index e062f6a88a76fb93c6e8921b993304c57198a2a6..e5dab1eb2c1b544ddd363b49fa0001ca8235cd2f 100644 (file)
@@ -1065,7 +1065,7 @@ static uint32_t jbd_journal_alloc_block(struct jbd_journal *journal,
        /* If there is no space left, flush all journalled
         * blocks to disk first.*/
        if (journal->last == journal->start)
-               ext4_block_cache_flush(journal->jbd_fs->inode_ref.fs->bdev);
+               jbd_journal_flush_all_trans(journal);
 
        return start_block;
 }