Re: [PATCH v8 04/11] nvmet: Allow ZNS target to support non-power_of_2 zone sizes

From: Pankaj Raghav
Date: Fri Jul 29 2022 - 03:46:52 EST


On 2022-07-28 05:09, Damien Le Moal wrote:

>> }
>
> This change should go into patch 3. Otherwise, adding patch 3 only will
> break the nvme target zone code.
>
Ok.
>>
>> static unsigned long get_nr_zones_from_buf(struct nvmet_req *req, u32 bufsize)
>> diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h
>> index 1be805223026..d1ef9b9552ed 100644
>> --- a/include/linux/blkdev.h
>> +++ b/include/linux/blkdev.h
>> @@ -1350,6 +1350,11 @@ static inline enum blk_zoned_model bdev_zoned_model(struct block_device *bdev)
>> return BLK_ZONED_NONE;
>> }
>>
>> +static inline unsigned int bdev_zone_no(struct block_device *bdev, sector_t sec)
>> +{
>> + return disk_zone_no(bdev->bd_disk, sec);
>> +}
>> +
>
> This should go into a prep patch before patch 3.
>
Bart commented in the earlier versions to see the new helpers along with
its usage instead of having it separately in a prep patch.

>> static inline int queue_dma_alignment(const struct request_queue *q)
>> {
>> return q ? q->dma_alignment : 511;
>
>