block: simplify blk_check_zone_append
authorChristoph Hellwig <hch@lst.de>
Wed, 6 Jul 2022 07:03:39 +0000 (09:03 +0200)
committerJens Axboe <axboe@kernel.dk>
Wed, 6 Jul 2022 12:46:25 +0000 (06:46 -0600)
Use the bdev based helpers instead of open coding them.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Chaitanya Kulkarni <kch@nvidia.com>
Reviewed-by: Damien Le Moal <damien.lemoal@opensource.wdc.com>
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Link: https://lore.kernel.org/r/20220706070350.1703384-6-hch@lst.de
Signed-off-by: Jens Axboe <axboe@kernel.dk>
block/blk-core.c

index bc16e9b..b530ce7 100644 (file)
@@ -565,7 +565,6 @@ static int blk_partition_remap(struct bio *bio)
 static inline blk_status_t blk_check_zone_append(struct request_queue *q,
                                                 struct bio *bio)
 {
-       sector_t pos = bio->bi_iter.bi_sector;
        int nr_sectors = bio_sectors(bio);
 
        /* Only applicable to zoned block devices */
@@ -573,8 +572,8 @@ static inline blk_status_t blk_check_zone_append(struct request_queue *q,
                return BLK_STS_NOTSUPP;
 
        /* The bio sector must point to the start of a sequential zone */
-       if (pos & (blk_queue_zone_sectors(q) - 1) ||
-           !blk_queue_zone_is_seq(q, pos))
+       if (bio->bi_iter.bi_sector & (bdev_zone_sectors(bio->bi_bdev) - 1) ||
+           !bio_zone_is_seq(bio))
                return BLK_STS_IOERR;
 
        /*