2022-07-08 17:31:49

by Christophe JAILLET

[permalink] [raw]
Subject: [PATCH] RDMA/qib: Use the bitmap API to allocate bitmaps

Use bitmap_zalloc()/bitmap_free() instead of hand-writing them.

It is less verbose and it improves the semantic.

Signed-off-by: Christophe JAILLET <[email protected]>
---
drivers/infiniband/hw/qib/qib_init.c | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/drivers/infiniband/hw/qib/qib_init.c b/drivers/infiniband/hw/qib/qib_init.c
index d1a72e89e297..45211008449f 100644
--- a/drivers/infiniband/hw/qib/qib_init.c
+++ b/drivers/infiniband/hw/qib/qib_init.c
@@ -1106,8 +1106,7 @@ struct qib_devdata *qib_alloc_devdata(struct pci_dev *pdev, size_t extra)
if (!qib_cpulist_count) {
u32 count = num_online_cpus();

- qib_cpulist = kcalloc(BITS_TO_LONGS(count), sizeof(long),
- GFP_KERNEL);
+ qib_cpulist = bitmap_zalloc(count, GFP_KERNEL);
if (qib_cpulist)
qib_cpulist_count = count;
}
@@ -1279,7 +1278,7 @@ static void __exit qib_ib_cleanup(void)
#endif

qib_cpulist_count = 0;
- kfree(qib_cpulist);
+ bitmap_free(qib_cpulist);

WARN_ON(!xa_empty(&qib_dev_table));
qib_dev_cleanup();
--
2.34.1


2022-07-11 12:24:43

by Dennis Dalessandro

[permalink] [raw]
Subject: Re: [PATCH] RDMA/qib: Use the bitmap API to allocate bitmaps

On 7/8/22 1:20 PM, Christophe JAILLET wrote:
> Use bitmap_zalloc()/bitmap_free() instead of hand-writing them.
>
> It is less verbose and it improves the semantic.
>
> Signed-off-by: Christophe JAILLET <[email protected]>
> ---
> drivers/infiniband/hw/qib/qib_init.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/infiniband/hw/qib/qib_init.c b/drivers/infiniband/hw/qib/qib_init.c
> index d1a72e89e297..45211008449f 100644
> --- a/drivers/infiniband/hw/qib/qib_init.c
> +++ b/drivers/infiniband/hw/qib/qib_init.c
> @@ -1106,8 +1106,7 @@ struct qib_devdata *qib_alloc_devdata(struct pci_dev *pdev, size_t extra)
> if (!qib_cpulist_count) {
> u32 count = num_online_cpus();
>
> - qib_cpulist = kcalloc(BITS_TO_LONGS(count), sizeof(long),
> - GFP_KERNEL);
> + qib_cpulist = bitmap_zalloc(count, GFP_KERNEL);
> if (qib_cpulist)
> qib_cpulist_count = count;
> }
> @@ -1279,7 +1278,7 @@ static void __exit qib_ib_cleanup(void)
> #endif
>
> qib_cpulist_count = 0;
> - kfree(qib_cpulist);
> + bitmap_free(qib_cpulist);
>
> WARN_ON(!xa_empty(&qib_dev_table));
> qib_dev_cleanup();

Looks OK to me.

Reviewed-by: Dennis Dalessandro <[email protected]>

2022-07-18 09:16:44

by Leon Romanovsky

[permalink] [raw]
Subject: Re: [PATCH] RDMA/qib: Use the bitmap API to allocate bitmaps

On Fri, Jul 08, 2022 at 07:20:39PM +0200, Christophe JAILLET wrote:
> Use bitmap_zalloc()/bitmap_free() instead of hand-writing them.
>
> It is less verbose and it improves the semantic.
>
> Signed-off-by: Christophe JAILLET <[email protected]>
> ---
> drivers/infiniband/hw/qib/qib_init.c | 5 ++---
> 1 file changed, 2 insertions(+), 3 deletions(-)
>

Thanks, applied