Remove array_size() calls and replace vmalloc() with
vmalloc_array() to simplify the code.

Signed-off-by: Qianfeng Rong <rongqianf...@vivo.com>
---
 drivers/md/dm-cache-policy-smq.c | 2 +-
 drivers/md/dm-region-hash.c      | 2 +-
 drivers/md/dm-switch.c           | 4 ++--
 drivers/md/dm-thin.c             | 4 ++--
 4 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/md/dm-cache-policy-smq.c b/drivers/md/dm-cache-policy-smq.c
index 2ed894155cab..7e1e8cc0e33a 100644
--- a/drivers/md/dm-cache-policy-smq.c
+++ b/drivers/md/dm-cache-policy-smq.c
@@ -590,7 +590,7 @@ static int h_init(struct smq_hash_table *ht, struct 
entry_space *es, unsigned in
        nr_buckets = roundup_pow_of_two(max(nr_entries / 4u, 16u));
        ht->hash_bits = __ffs(nr_buckets);
 
-       ht->buckets = vmalloc(array_size(nr_buckets, sizeof(*ht->buckets)));
+       ht->buckets = vmalloc_array(nr_buckets, sizeof(*ht->buckets));
        if (!ht->buckets)
                return -ENOMEM;
 
diff --git a/drivers/md/dm-region-hash.c b/drivers/md/dm-region-hash.c
index a4550975c27d..e9b47b659976 100644
--- a/drivers/md/dm-region-hash.c
+++ b/drivers/md/dm-region-hash.c
@@ -206,7 +206,7 @@ struct dm_region_hash *dm_region_hash_create(
        rh->shift = RH_HASH_SHIFT;
        rh->prime = RH_HASH_MULT;
 
-       rh->buckets = vmalloc(array_size(nr_buckets, sizeof(*rh->buckets)));
+       rh->buckets = vmalloc_array(nr_buckets, sizeof(*rh->buckets));
        if (!rh->buckets) {
                DMERR("unable to allocate region hash bucket memory");
                kfree(rh);
diff --git a/drivers/md/dm-switch.c b/drivers/md/dm-switch.c
index bb1a70b5a215..50a52ca50b34 100644
--- a/drivers/md/dm-switch.c
+++ b/drivers/md/dm-switch.c
@@ -114,8 +114,8 @@ static int alloc_region_table(struct dm_target *ti, 
unsigned int nr_paths)
                return -EINVAL;
        }
 
-       sctx->region_table = vmalloc(array_size(nr_slots,
-                                               sizeof(region_table_slot_t)));
+       sctx->region_table = vmalloc_array(nr_slots,
+                                          sizeof(region_table_slot_t));
        if (!sctx->region_table) {
                ti->error = "Cannot allocate region table";
                return -ENOMEM;
diff --git a/drivers/md/dm-thin.c b/drivers/md/dm-thin.c
index 007bb93e5fca..c84149ba4e38 100644
--- a/drivers/md/dm-thin.c
+++ b/drivers/md/dm-thin.c
@@ -3031,8 +3031,8 @@ static struct pool *pool_create(struct mapped_device 
*pool_md,
        }
 
        pool->cell_sort_array =
-               vmalloc(array_size(CELL_SORT_ARRAY_SIZE,
-                                  sizeof(*pool->cell_sort_array)));
+               vmalloc_array(CELL_SORT_ARRAY_SIZE,
+                             sizeof(*pool->cell_sort_array));
        if (!pool->cell_sort_array) {
                *error = "Error allocating cell sort array";
                err_p = ERR_PTR(-ENOMEM);
-- 
2.34.1


Reply via email to