[PATCH v4 2/8] nvme: cleanup zone information initialization
Damien Le Moal
Damien.LeMoal at wdc.com
Thu Jan 28 04:27:41 EST 2021
On 2021/01/28 18:17, Christoph Hellwig wrote:
>> int nvme_revalidate_zones(struct nvme_ns *ns)
>> {
>> - struct request_queue *q = ns->queue;
>> - int ret;
>> -
>> - ret = blk_revalidate_disk_zones(ns->disk, NULL);
>> - if (!ret)
>> - blk_queue_max_zone_append_sectors(q, ns->ctrl->max_zone_append);
>> - return ret;
>> + return blk_revalidate_disk_zones(ns->disk, NULL);
>
> We can just kill off nvme_revalidate_zones now and open code it in
> the caller as the stub is no needed now that blk_queue_is_zoned always
> return false for the !CONFIG_BLK_DEV_ZONED case.
I tried that first, but it did not work. I end up with
blk_revalidate_disk_zones() undefined error with !CONFIG_BLK_DEV_ZONED.
This is because blk_queue_is_zoned() is *not* stubbed for !CONFIG_BLK_DEV_ZONED.
It will simply always return 0/none in that case. We would need to have:
if (IS_ENABLED(CONFIG_BLK_DEV_ZONED) && blk_queue_is_zoned()) {
ret = blk_revalidate_disk_zones(ns->disk, NULL);
...
Or stub blk_queue_is_zoned()...
>
> Otherwise this look great, nice cleanup:
>
> Reviewed-by: Christoph Hellwig <hch at lst.de>
>
--
Damien Le Moal
Western Digital Research
More information about the Linux-nvme
mailing list