Since only a single caller remains, inline blk_rq_set_prio(). Initialize
req->ioprio even if no I/O priority has been set in the bio nor in the
I/O context.

Signed-off-by: Bart Van Assche <[email protected]>
Reviewed-by: Adam Manzanares <[email protected]>
Tested-by: Adam Manzanares <[email protected]>
Cc: Christoph Hellwig <[email protected]>
Cc: Matias Bjørling <[email protected]>
---
 block/blk-core.c       |  7 ++++---
 include/linux/blkdev.h | 14 --------------
 2 files changed, 4 insertions(+), 17 deletions(-)

diff --git a/block/blk-core.c b/block/blk-core.c
index c274aed2ca3f..7374b02370fa 100644
--- a/block/blk-core.c
+++ b/block/blk-core.c
@@ -1635,14 +1635,15 @@ unsigned int blk_plug_queued_count(struct request_queue 
*q)
 
 void blk_init_request_from_bio(struct request *req, struct bio *bio)
 {
+       struct io_context *ioc = rq_ioc(bio);
+
        if (bio->bi_opf & REQ_RAHEAD)
                req->cmd_flags |= REQ_FAILFAST_MASK;
 
        req->errors = 0;
        req->__sector = bio->bi_iter.bi_sector;
-       blk_rq_set_prio(req, rq_ioc(bio));
-       if (ioprio_valid(bio_prio(bio)))
-               req->ioprio = bio_prio(bio);
+       req->ioprio = ioprio_valid(bio_prio(bio)) ? bio_prio(bio) : ioc ?
+               ioc->ioprio : IOPRIO_PRIO_VALUE(IOPRIO_CLASS_NONE, 0);
        blk_rq_bio_prep(req->q, req, bio);
 }
 EXPORT_SYMBOL(blk_init_request_from_bio);
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
index e1ea875ec048..28f713803871 100644
--- a/include/linux/blkdev.h
+++ b/include/linux/blkdev.h
@@ -1088,20 +1088,6 @@ static inline unsigned int blk_rq_count_bios(struct 
request *rq)
 }
 
 /*
- * blk_rq_set_prio - associate a request with prio from ioc
- * @rq: request of interest
- * @ioc: target iocontext
- *
- * Assocate request prio with ioc prio so request based drivers
- * can leverage priority information.
- */
-static inline void blk_rq_set_prio(struct request *rq, struct io_context *ioc)
-{
-       if (ioc)
-               rq->ioprio = ioc->ioprio;
-}
-
-/*
  * Request issue related functions.
  */
 extern struct request *blk_peek_request(struct request_queue *q);
-- 
2.12.2

Reply via email to