summaryrefslogtreecommitdiffstats
path: root/block/blk.h
diff options
context:
space:
mode:
authorChristoph Hellwig <hch@lst.de>2019-06-06 12:29:04 +0200
committerJens Axboe <axboe@kernel.dk>2019-06-20 18:29:22 +0200
commit1aa0a133fbabeca9e8785fb11de471841009d6d9 (patch)
tree65cb6ab9c6ccbf2036a18a661197068b77f25dc4 /block/blk.h
parentblock: untangle the end of blk_bio_segment_split (diff)
downloadlinux-1aa0a133fbabeca9e8785fb11de471841009d6d9.tar.xz
linux-1aa0a133fbabeca9e8785fb11de471841009d6d9.zip
block: mark blk_rq_bio_prep as inline
This function just has a few trivial assignments, has two callers with one of them being in the fastpath. 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>
Diffstat (limited to 'block/blk.h')
-rw-r--r--block/blk.h13
1 files changed, 12 insertions, 1 deletions
diff --git a/block/blk.h b/block/blk.h
index c62e801b2582..de6b2e146d6e 100644
--- a/block/blk.h
+++ b/block/blk.h
@@ -51,7 +51,6 @@ struct blk_flush_queue *blk_alloc_flush_queue(struct request_queue *q,
int node, int cmd_size, gfp_t flags);
void blk_free_flush_queue(struct blk_flush_queue *q);
-void blk_rq_bio_prep(struct request *rq, struct bio *bio, unsigned int nr_segs);
void blk_freeze_queue(struct request_queue *q);
static inline void blk_queue_enter_live(struct request_queue *q)
@@ -100,6 +99,18 @@ static inline bool bvec_gap_to_prev(struct request_queue *q,
return __bvec_gap_to_prev(q, bprv, offset);
}
+static inline void blk_rq_bio_prep(struct request *rq, struct bio *bio,
+ unsigned int nr_segs)
+{
+ rq->nr_phys_segments = nr_segs;
+ 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;
+}
+
#ifdef CONFIG_BLK_DEV_INTEGRITY
void blk_flush_integrity(void);
bool __bio_integrity_endio(struct bio *);