[dm-devel] [PATCH 2/9] block: cleanup the !zoned case in blk_revalidate_disk_zones

Hannes Reinecke hare at suse.de
Fri Nov 8 07:11:19 UTC 2019


On 11/8/19 2:56 AM, Damien Le Moal wrote:
> From: Christoph Hellwig <hch at lst.de>
> 
> blk_revalidate_disk_zones is never called for non-zoned devices.  Just
> return early and warn instead of trying to handle this case.
> 
> Signed-off-by: Christoph Hellwig <hch at lst.de>
> Signed-off-by: Damien Le Moal <damien.lemoal at wdc.com>
> ---
>  block/blk-zoned.c | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/block/blk-zoned.c b/block/blk-zoned.c
> index dae787f67019..523a28d7a15c 100644
> --- a/block/blk-zoned.c
> +++ b/block/blk-zoned.c
> @@ -520,6 +520,9 @@ int blk_revalidate_disk_zones(struct gendisk *disk)
>  	sector_t sector = 0;
>  	int ret = 0;
>  
> +	if (WARN_ON_ONCE(!blk_queue_is_zoned(q)))
> +		return -EIO;
> +
>  	/*
>  	 * BIO based queues do not use a scheduler so only q->nr_zones
>  	 * needs to be updated so that the sysfs exposed value is correct.
> @@ -535,10 +538,8 @@ int blk_revalidate_disk_zones(struct gendisk *disk)
>  	 */
>  	noio_flag = memalloc_noio_save();
>  
> -	if (!blk_queue_is_zoned(q) || !nr_zones) {
> -		nr_zones = 0;
> +	if (!nr_zones)
>  		goto update;
> -	}
>  
>  	/* Allocate bitmaps */
>  	ret = -ENOMEM;
> 
Reviewed-by: Hannes Reinecke <hare at suse.de>

Cheers,

Hannes
-- 
Dr. Hannes Reinecke		      Teamlead Storage & Networking
hare at suse.de			                  +49 911 74053 688
SUSE Software Solutions Germany GmbH, Maxfeldstr. 5, 90409 Nürnberg
HRB 247165 (AG München), GF: Felix Imendörffer




More information about the dm-devel mailing list