atm: he: 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 <christophe.jaillet@wanadoo.fr> Link: https://lore.kernel.org/r/7f795bd6d5b2a00f581175b7069b229c2e5a4192.1657379127.git.christophe.jaillet@wanadoo.fr Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
Родитель
2b8bf3d6c9
Коммит
9e433ac1a3
|
@ -780,14 +780,11 @@ static int he_init_group(struct he_dev *he_dev, int group)
|
|||
G0_RBPS_BS + (group * 32));
|
||||
|
||||
/* bitmap table */
|
||||
he_dev->rbpl_table = kmalloc_array(BITS_TO_LONGS(RBPL_TABLE_SIZE),
|
||||
sizeof(*he_dev->rbpl_table),
|
||||
GFP_KERNEL);
|
||||
he_dev->rbpl_table = bitmap_zalloc(RBPL_TABLE_SIZE, GFP_KERNEL);
|
||||
if (!he_dev->rbpl_table) {
|
||||
hprintk("unable to allocate rbpl bitmap table\n");
|
||||
return -ENOMEM;
|
||||
}
|
||||
bitmap_zero(he_dev->rbpl_table, RBPL_TABLE_SIZE);
|
||||
|
||||
/* rbpl_virt 64-bit pointers */
|
||||
he_dev->rbpl_virt = kmalloc_array(RBPL_TABLE_SIZE,
|
||||
|
@ -902,7 +899,7 @@ out_destroy_rbpl_pool:
|
|||
out_free_rbpl_virt:
|
||||
kfree(he_dev->rbpl_virt);
|
||||
out_free_rbpl_table:
|
||||
kfree(he_dev->rbpl_table);
|
||||
bitmap_free(he_dev->rbpl_table);
|
||||
|
||||
return -ENOMEM;
|
||||
}
|
||||
|
@ -1578,7 +1575,7 @@ he_stop(struct he_dev *he_dev)
|
|||
}
|
||||
|
||||
kfree(he_dev->rbpl_virt);
|
||||
kfree(he_dev->rbpl_table);
|
||||
bitmap_free(he_dev->rbpl_table);
|
||||
dma_pool_destroy(he_dev->rbpl_pool);
|
||||
|
||||
if (he_dev->rbrq_base)
|
||||
|
|
Загрузка…
Ссылка в новой задаче