diff options
author | Theodore Ts'o <tytso@mit.edu> | 2013-04-20 15:46:17 -0400 |
---|---|---|
committer | Theodore Ts'o <tytso@mit.edu> | 2013-04-20 15:46:17 -0400 |
commit | 9f203507ed277ee86e3f76a15e09db1c92e40b94 (patch) | |
tree | 3055dbd2f6a885b20db3fda1d56ea0d9e780d9dd /fs/ext4/super.c | |
parent | c4d8b0235aa98f8c26bf94d308be3fdd24154572 (diff) | |
download | kernel-common-9f203507ed277ee86e3f76a15e09db1c92e40b94.tar.gz kernel-common-9f203507ed277ee86e3f76a15e09db1c92e40b94.tar.bz2 kernel-common-9f203507ed277ee86e3f76a15e09db1c92e40b94.zip |
ext4: mark all metadata I/O with REQ_META
As Dave Chinner pointed out at the 2013 LSF/MM workshop, it's
important that metadata I/O requests are marked as such to avoid
priority inversions caused by I/O bandwidth throttling.
Signed-off-by: "Theodore Ts'o" <tytso@mit.edu>
Diffstat (limited to 'fs/ext4/super.c')
-rw-r--r-- | fs/ext4/super.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/ext4/super.c b/fs/ext4/super.c index bfa29ecfb47a..dbc7c090c13a 100644 --- a/fs/ext4/super.c +++ b/fs/ext4/super.c @@ -4252,7 +4252,7 @@ static journal_t *ext4_get_dev_journal(struct super_block *sb, goto out_bdev; } journal->j_private = sb; - ll_rw_block(READ, 1, &journal->j_sb_buffer); + ll_rw_block(READ | REQ_META | REQ_PRIO, 1, &journal->j_sb_buffer); wait_on_buffer(journal->j_sb_buffer); if (!buffer_uptodate(journal->j_sb_buffer)) { ext4_msg(sb, KERN_ERR, "I/O error on journal device"); |