OSDN Git Service

block: initialize the write priority in blk_rq_bio_prep
authorChristoph Hellwig <hch@lst.de>
Thu, 6 Jun 2019 10:28:59 +0000 (12:28 +0200)
committerJens Axboe <axboe@kernel.dk>
Thu, 20 Jun 2019 16:29:22 +0000 (10:29 -0600)
The priority field also makes sense for passthrough requests, so
initialize it in blk_rq_bio_prep.

Reviewed-by: Minwoo Im <minwoo.im.dev@gmail.com>
Reviewed-by: Hannes Reinecke <hare@suse.com>
Reviewed-by: Chaitanya Kulkarni <chaitanya.kulkarni@wdc.com>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/blk-core.c

index 94c6520..b6f22f2 100644 (file)
@@ -693,7 +693,6 @@ void blk_init_request_from_bio(struct request *req, struct bio *bio)
                req->cmd_flags |= REQ_FAILFAST_MASK;
 
        req->__sector = bio->bi_iter.bi_sector;
-       req->ioprio = bio_prio(bio);
        req->write_hint = bio->bi_write_hint;
        blk_rq_bio_prep(req->q, req, bio);
 }
@@ -1449,6 +1448,7 @@ void blk_rq_bio_prep(struct request_queue *q, struct request *rq,
 
        rq->__data_len = bio->bi_iter.bi_size;
        rq->bio = rq->biotail = bio;
+       rq->ioprio = bio_prio(bio);
 
        if (bio->bi_disk)
                rq->rq_disk = bio->bi_disk;