Commit 1b2f5d5d authored by Christoph Hellwig's avatar Christoph Hellwig Committed by Keith Busch
Browse files

nvme: remove nvme_revalidate_zones



Handle setting the zone size / chunk_sectors and max_append_sectors
limits together with the other ZNS limits, and just open code the
call to blk_revalidate_zones in the current place.

Signed-off-by: default avatarChristoph Hellwig <hch@lst.de>
Reviewed-by: default avatarDamien Le Moal <dlemoal@kernel.org>
Signed-off-by: default avatarKeith Busch <kbusch@kernel.org>
parent 63dfa100
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2154,7 +2154,7 @@ static int nvme_update_ns_info_block(struct nvme_ns *ns,
	blk_mq_unfreeze_queue(ns->disk->queue);

	if (blk_queue_is_zoned(ns->queue)) {
		ret = nvme_revalidate_zones(ns);
		ret = blk_revalidate_disk_zones(ns->disk, NULL);
		if (ret && !nvme_first_scan(ns->disk))
			goto out;
	}
+0 −1
Original line number Diff line number Diff line
@@ -1036,7 +1036,6 @@ static inline bool nvme_disk_is_ns_head(struct gendisk *disk)
}
#endif /* CONFIG_NVME_MULTIPATH */

int nvme_revalidate_zones(struct nvme_ns *ns);
int nvme_ns_report_zones(struct nvme_ns *ns, sector_t sector,
		unsigned int nr_zones, report_zones_cb cb, void *data);
#ifdef CONFIG_BLK_DEV_ZONED
+2 −10
Original line number Diff line number Diff line
@@ -7,16 +7,6 @@
#include <linux/vmalloc.h>
#include "nvme.h"

int nvme_revalidate_zones(struct nvme_ns *ns)
{
	struct request_queue *q = ns->queue;

	blk_queue_chunk_sectors(q, ns->head->zsze);
	blk_queue_max_zone_append_sectors(q, ns->ctrl->max_zone_append);

	return blk_revalidate_disk_zones(ns->disk, NULL);
}

static int nvme_set_max_append(struct nvme_ctrl *ctrl)
{
	struct nvme_command c = { };
@@ -113,6 +103,8 @@ int nvme_update_zone_info(struct nvme_ns *ns, unsigned lbaf)
	blk_queue_flag_set(QUEUE_FLAG_ZONE_RESETALL, q);
	disk_set_max_open_zones(ns->disk, le32_to_cpu(id->mor) + 1);
	disk_set_max_active_zones(ns->disk, le32_to_cpu(id->mar) + 1);
	blk_queue_chunk_sectors(ns->queue, ns->head->zsze);
	blk_queue_max_zone_append_sectors(ns->queue, ns->ctrl->max_zone_append);
free_data:
	kfree(id);
	return status;