When recovering a large filesystem, avoid log recover IO being throttled by rq_qos_throttle(). Signed-off-by: Jinliang Zheng <alexjlzheng@xxxxxxxxxxx> --- fs/xfs/xfs_bio_io.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/fs/xfs/xfs_bio_io.c b/fs/xfs/xfs_bio_io.c index fe21c76f75b8..259955f2aeb2 100644 --- a/fs/xfs/xfs_bio_io.c +++ b/fs/xfs/xfs_bio_io.c @@ -22,12 +22,15 @@ xfs_rw_bdev( unsigned int left = count; int error; struct bio *bio; + blk_opf_t opf = op | REQ_META | REQ_SYNC; if (is_vmalloc && op == REQ_OP_WRITE) flush_kernel_vmap_range(data, count); - bio = bio_alloc(bdev, bio_max_vecs(left), op | REQ_META | REQ_SYNC, - GFP_KERNEL); + if (op == REQ_OP_WRITE) + opf |= REQ_IDLE; + + bio = bio_alloc(bdev, bio_max_vecs(left), opf, GFP_KERNEL); bio->bi_iter.bi_sector = sector; do { -- 2.41.1