RDMA/cxgb4: Use bitmap_set() when applicable
authorChristophe JAILLET <christophe.jaillet@wanadoo.fr>
Wed, 24 Nov 2021 21:40:25 +0000 (22:40 +0100)
committerJason Gunthorpe <jgg@nvidia.com>
Thu, 25 Nov 2021 17:29:06 +0000 (13:29 -0400)
The 'alloc->table' bitmap has just been allocated, so this is safe to use
the faster and non-atomic 'bitmap_set()' function. There is no need to
hand-write it.

Link: https://lore.kernel.org/r/fd978b837935ed04863ffecfd495c4601a986df6.1637789139.git.christophe.jaillet@wanadoo.fr
Signed-off-by: Christophe JAILLET <christophe.jaillet@wanadoo.fr>
Signed-off-by: Jason Gunthorpe <jgg@nvidia.com>
drivers/infiniband/hw/cxgb4/id_table.c

index 9d08a48c49268ae4813a39de42547b66ccd5b382..e09faa659d68a2c47e9e829774a06df7e7544978 100644 (file)
@@ -82,8 +82,6 @@ void c4iw_id_free(struct c4iw_id_table *alloc, u32 obj)
 int c4iw_id_table_alloc(struct c4iw_id_table *alloc, u32 start, u32 num,
                        u32 reserved, u32 flags)
 {
-       int i;
-
        alloc->start = start;
        alloc->flags = flags;
        if (flags & C4IW_ID_TABLE_F_RANDOM)
@@ -97,8 +95,7 @@ int c4iw_id_table_alloc(struct c4iw_id_table *alloc, u32 start, u32 num,
                return -ENOMEM;
 
        if (!(alloc->flags & C4IW_ID_TABLE_F_EMPTY))
-               for (i = 0; i < reserved; ++i)
-                       set_bit(i, alloc->table);
+               bitmap_set(alloc->table, 0, reserved);
 
        return 0;
 }