[dm-devel] [patch] dm space map metadata: fix sm_bootstrap_get_nr_blocks()

Joe Thornber thornber at redhat.com
Mon Dec 1 13:56:12 UTC 2014


Ack, thanks.

On Sat, Nov 29, 2014 at 03:50:21PM +0300, Dan Carpenter wrote:
> This function isn't right and it causes a static checker warning:
> 
> 	drivers/md/dm-thin.c:3016 maybe_resize_data_dev()
> 	error: potentially using uninitialized 'sb_data_size'.
> 
> It should set "*count" and return zero on success the same as the
> sm_metadata_get_nr_blocks() function does earlier.
> 
> Fixes: 3241b1d3e0aa ('dm: add persistent data library')
> Signed-off-by: Dan Carpenter <dan.carpenter at oracle.com>
> ---
> Static checker stuff.  Not tested.
> 
> diff --git a/drivers/md/persistent-data/dm-space-map-metadata.c b/drivers/md/persistent-data/dm-space-map-metadata.c
> index 786b689..f4e22bc 100644
> --- a/drivers/md/persistent-data/dm-space-map-metadata.c
> +++ b/drivers/md/persistent-data/dm-space-map-metadata.c
> @@ -564,7 +564,9 @@ static int sm_bootstrap_get_nr_blocks(struct dm_space_map *sm, dm_block_t *count
>  {
>  	struct sm_metadata *smm = container_of(sm, struct sm_metadata, sm);
>  
> -	return smm->ll.nr_blocks;
> +	*count = smm->ll.nr_blocks;
> +
> +	return 0;
>  }
>  
>  static int sm_bootstrap_get_nr_free(struct dm_space_map *sm, dm_block_t *count)




More information about the dm-devel mailing list