From: Christoph Hellwig <hch@lst.de>
To: Jens Axboe <axboe@kernel.dk>
Cc: Mike Snitzer <snitzer@redhat.com>,
linux-block@vger.kernel.org, dm-devel@redhat.com
Subject: [PATCH 6/6] block: pass the start sector to get_max_io_size
Date: Wed, 13 Oct 2021 19:12:15 +0200 [thread overview]
Message-ID: <20211013171215.1177671-7-hch@lst.de> (raw)
In-Reply-To: <20211013171215.1177671-1-hch@lst.de>
Pass the start sector instead of the whole bio.
Signed-off-by: Christoph Hellwig <hch@lst.de>
---
block/blk-merge.c | 6 ++----
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/block/blk-merge.c b/block/blk-merge.c
index 87ea3e7b8ad28..7498f570aa302 100644
--- a/block/blk-merge.c
+++ b/block/blk-merge.c
@@ -174,12 +174,10 @@ static struct bio *blk_bio_write_same_split(struct request_queue *q,
* requests that are submitted to a block device if the start of a bio is not
* aligned to a physical block boundary.
*/
-static inline unsigned get_max_io_size(struct request_queue *q,
- struct bio *bio)
+static inline unsigned get_max_io_size(struct request_queue *q, sector_t sector)
{
unsigned pbs = queue_physical_block_size(q) >> SECTOR_SHIFT;
unsigned lbs = queue_logical_block_size(q) >> SECTOR_SHIFT;
- sector_t sector = bio->bi_iter.bi_sector;
unsigned start_offset = sector & (pbs - 1);
unsigned sectors = q->limits.max_sectors;
unsigned max_sectors;
@@ -288,7 +286,7 @@ static struct bio *blk_bio_segment_split(struct request_queue *q,
struct bio_vec bv, bvprv, *bvprvp = NULL;
struct bvec_iter iter;
unsigned nsegs = 0, sectors = 0;
- const unsigned max_sectors = get_max_io_size(q, bio);
+ const unsigned max_sectors = get_max_io_size(q, bio->bi_iter.bi_sector);
const unsigned max_segs = queue_max_segments(q);
bio_for_each_bvec(bv, bio, iter) {
--
2.30.2
prev parent reply other threads:[~2021-10-13 17:20 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-10-13 17:12 simplify I/O size calculation helpers v2 Christoph Hellwig
2021-10-13 17:12 ` [PATCH 1/6] block: factor out a chunk_size_left helper Christoph Hellwig
2021-10-13 17:12 ` [PATCH 2/6] dm: open code blk_max_size_offset in max_io_len Christoph Hellwig
2021-10-13 17:12 ` [PATCH 3/6] block: only call blk_queue_get_max_sectors once in blk_rq_get_max_sectors Christoph Hellwig
2021-10-13 17:12 ` [PATCH 4/6] block: open code blk_max_size_offset " Christoph Hellwig
2021-10-13 17:12 ` [PATCH 5/6] block: fold blk_max_size_offset into get_max_io_size Christoph Hellwig
2021-10-13 17:12 ` Christoph Hellwig [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20211013171215.1177671-7-hch@lst.de \
--to=hch@lst.de \
--cc=axboe@kernel.dk \
--cc=dm-devel@redhat.com \
--cc=linux-block@vger.kernel.org \
--cc=snitzer@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox