In my fsync testing, journal I/O most definitely was sync I/O, since another process was blocked waiting for the results. By marking all journal I/O as WRITE_SYNC, I can get better performance with CFQ. If there is a way to mark this only for cases where it is blocking progress in a dependent process, then that would be preferrable. Is there such a means for determining and flagging this? Cheers, Jeff Signed-off-by: Jeff Moyer <jmoyer@xxxxxxxxxx> --- fs/jbd/commit.c | 2 +- 1 files changed, 1 insertions(+), 1 deletions(-) diff --git a/fs/jbd/commit.c b/fs/jbd/commit.c index 28a9dda..d97a0c6 100644 --- a/fs/jbd/commit.c +++ b/fs/jbd/commit.c @@ -317,7 +317,7 @@ void journal_commit_transaction(journal_t *journal) int first_tag = 0; int tag_flag; int i; - int write_op = WRITE; + int write_op = WRITE_SYNC; /* * First job: lock down the current transaction and wait for -- 1.6.5.2 -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html