Thread (38 messages) 38 messages, 10 authors, 2020-11-10

Re: [PATCH 03/24] nvme: let set_capacity_revalidate_and_notify update the bdev size

From: Hannes Reinecke <hare@suse.de>
Date: 2020-11-09 07:54:05
Also in: ceph-devel, dm-devel, linux-block, linux-fsdevel, linux-nvme, linux-scsi, xen-devel

On 11/6/20 8:03 PM, Christoph Hellwig wrote:
quoted hunk ↗ jump to hunk
There is no good reason to call revalidate_disk_size separately.

Signed-off-by: Christoph Hellwig <hch@lst.de>
---
  drivers/nvme/host/core.c | 5 +----
  1 file changed, 1 insertion(+), 4 deletions(-)
diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c
index 376096bfc54a83..4e86c9aafd88a7 100644
--- a/drivers/nvme/host/core.c
+++ b/drivers/nvme/host/core.c
@@ -2053,7 +2053,7 @@ static void nvme_update_disk_info(struct gendisk *disk,
  			capacity = 0;
  	}
  
-	set_capacity_revalidate_and_notify(disk, capacity, false);
+	set_capacity_revalidate_and_notify(disk, capacity, true);
  
  	nvme_config_discard(disk, ns);
  	nvme_config_write_zeroes(disk, ns);
@@ -2136,7 +2136,6 @@ static int nvme_update_ns_info(struct nvme_ns *ns, struct nvme_id_ns *id)
  		blk_stack_limits(&ns->head->disk->queue->limits,
  				 &ns->queue->limits, 0);
  		blk_queue_update_readahead(ns->head->disk->queue);
-		nvme_update_bdev_size(ns->head->disk);
  		blk_mq_unfreeze_queue(ns->head->disk->queue);
  	}
  #endif
Hold on.
This, at the very least, should be a separate patch.
With this you are changing the behaviour of nvme multipath.

Originally nvme multipath would update/change the size of the multipath device according to the underlying path devices.
With this patch the size of the multipath device will _not_ change if there is a change on the underlying devices.

While personally I would _love_ to have this patch, we should at least document this by making it a separate patch.
And we possibly should check if both sizes are the same, and think of what we should be doing if they are not.

Cheers,

Hannes
-- 
Dr. Hannes Reinecke                Kernel Storage Architect
hare@suse.de                              +49 911 74053 688
SUSE Software Solutions GmbH, Maxfeldstr. 5, 90409 Nürnberg
HRB 36809 (AG Nürnberg), Geschäftsführer: Felix Imendörffer
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help