diff mbox series

[v1] libnvdimm, label: Switch to bitmap_zalloc()

Message ID 20180830103207.60669-1-andriy.shevchenko@linux.intel.com (mailing list archive)
State Accepted
Commit 9065ed1281a57f8cf84695b4a1e86ee9bd586b01
Headers show
Series [v1] libnvdimm, label: Switch to bitmap_zalloc() | expand

Commit Message

Andy Shevchenko Aug. 30, 2018, 10:32 a.m. UTC
Switch to bitmap_zalloc() to show clearly what we are allocating.
Besides that it returns pointer of bitmap type instead of opaque void *.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
---
 drivers/nvdimm/label.c | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

Comments

Johannes Thumshirn Aug. 30, 2018, 12:16 p.m. UTC | #1
Looks good,
Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de>
Dave Jiang Aug. 30, 2018, 9:46 p.m. UTC | #2
On 08/30/2018 03:32 AM, Andy Shevchenko wrote:
> Switch to bitmap_zalloc() to show clearly what we are allocating.
> Besides that it returns pointer of bitmap type instead of opaque void *.
> 
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>

Applied

> ---
>  drivers/nvdimm/label.c | 7 +++----
>  1 file changed, 3 insertions(+), 4 deletions(-)
> 
> diff --git a/drivers/nvdimm/label.c b/drivers/nvdimm/label.c
> index 1d28cd656536..53159262c85d 100644
> --- a/drivers/nvdimm/label.c
> +++ b/drivers/nvdimm/label.c
> @@ -814,8 +814,7 @@ static int __blk_label_update(struct nd_region *nd_region,
>  	victims = 0;
>  	if (old_num_resources) {
>  		/* convert old local-label-map to dimm-slot victim-map */
> -		victim_map = kcalloc(BITS_TO_LONGS(nslot), sizeof(long),
> -				GFP_KERNEL);
> +		victim_map = bitmap_zalloc(nslot, GFP_KERNEL);
>  		if (!victim_map)
>  			return -ENOMEM;
>  
> @@ -838,7 +837,7 @@ static int __blk_label_update(struct nd_region *nd_region,
>  	/* don't allow updates that consume the last label */
>  	if (nfree - alloc < 0 || nfree - alloc + victims < 1) {
>  		dev_info(&nsblk->common.dev, "insufficient label space\n");
> -		kfree(victim_map);
> +		bitmap_free(victim_map);
>  		return -ENOSPC;
>  	}
>  	/* from here on we need to abort on error */
> @@ -1010,7 +1009,7 @@ static int __blk_label_update(struct nd_region *nd_region,
>  
>   out:
>  	kfree(old_res_list);
> -	kfree(victim_map);
> +	bitmap_free(victim_map);
>  	return rc;
>  
>   abort:
>
diff mbox series

Patch

diff --git a/drivers/nvdimm/label.c b/drivers/nvdimm/label.c
index 1d28cd656536..53159262c85d 100644
--- a/drivers/nvdimm/label.c
+++ b/drivers/nvdimm/label.c
@@ -814,8 +814,7 @@  static int __blk_label_update(struct nd_region *nd_region,
 	victims = 0;
 	if (old_num_resources) {
 		/* convert old local-label-map to dimm-slot victim-map */
-		victim_map = kcalloc(BITS_TO_LONGS(nslot), sizeof(long),
-				GFP_KERNEL);
+		victim_map = bitmap_zalloc(nslot, GFP_KERNEL);
 		if (!victim_map)
 			return -ENOMEM;
 
@@ -838,7 +837,7 @@  static int __blk_label_update(struct nd_region *nd_region,
 	/* don't allow updates that consume the last label */
 	if (nfree - alloc < 0 || nfree - alloc + victims < 1) {
 		dev_info(&nsblk->common.dev, "insufficient label space\n");
-		kfree(victim_map);
+		bitmap_free(victim_map);
 		return -ENOSPC;
 	}
 	/* from here on we need to abort on error */
@@ -1010,7 +1009,7 @@  static int __blk_label_update(struct nd_region *nd_region,
 
  out:
 	kfree(old_res_list);
-	kfree(victim_map);
+	bitmap_free(victim_map);
 	return rc;
 
  abort: