Use dma_zalloc_coherent and vzalloc for allocating zeroed
memory and remove unnecessary memset function.

Done using Coccinelle.
Generated-by: scripts/coccinelle/api/alloc/kzalloc-simple.cocci
0-day tested with no failures.

Suggested-by: Luis R. Rodriguez <mcg...@kernel.org>
Signed-off-by: Himanshu Jha <himanshujha199...@gmail.com>
---
 drivers/net/ethernet/qlogic/qed/qed_cxt.c | 12 +++++-------
 drivers/net/ethernet/qlogic/qed/qed_l2.c  |  3 +--
 2 files changed, 6 insertions(+), 9 deletions(-)

diff --git a/drivers/net/ethernet/qlogic/qed/qed_cxt.c 
b/drivers/net/ethernet/qlogic/qed/qed_cxt.c
index afd07ad..f0a55d2 100644
--- a/drivers/net/ethernet/qlogic/qed/qed_cxt.c
+++ b/drivers/net/ethernet/qlogic/qed/qed_cxt.c
@@ -1055,11 +1055,10 @@ static int qed_ilt_blk_alloc(struct qed_hwfn *p_hwfn,
                u32 size;
 
                size = min_t(u32, sz_left, p_blk->real_size_in_page);
-               p_virt = dma_alloc_coherent(&p_hwfn->cdev->pdev->dev,
-                                           size, &p_phys, GFP_KERNEL);
+               p_virt = dma_zalloc_coherent(&p_hwfn->cdev->pdev->dev, size,
+                                            &p_phys, GFP_KERNEL);
                if (!p_virt)
                        return -ENOMEM;
-               memset(p_virt, 0, size);
 
                ilt_shadow[line].p_phys = p_phys;
                ilt_shadow[line].p_virt = p_virt;
@@ -2303,14 +2302,13 @@ qed_cxt_dynamic_ilt_alloc(struct qed_hwfn *p_hwfn,
                goto out0;
        }
 
-       p_virt = dma_alloc_coherent(&p_hwfn->cdev->pdev->dev,
-                                   p_blk->real_size_in_page,
-                                   &p_phys, GFP_KERNEL);
+       p_virt = dma_zalloc_coherent(&p_hwfn->cdev->pdev->dev,
+                                    p_blk->real_size_in_page, &p_phys,
+                                    GFP_KERNEL);
        if (!p_virt) {
                rc = -ENOMEM;
                goto out1;
        }
-       memset(p_virt, 0, p_blk->real_size_in_page);
 
        /* configuration of refTagMask to 0xF is required for RoCE DIF MR only,
         * to compensate for a HW bug, but it is configured even if DIF is not
diff --git a/drivers/net/ethernet/qlogic/qed/qed_l2.c 
b/drivers/net/ethernet/qlogic/qed/qed_l2.c
index 0853389..fd76b81 100644
--- a/drivers/net/ethernet/qlogic/qed/qed_l2.c
+++ b/drivers/net/ethernet/qlogic/qed/qed_l2.c
@@ -223,10 +223,9 @@ _qed_eth_queue_to_cid(struct qed_hwfn *p_hwfn,
        struct qed_queue_cid *p_cid;
        int rc;
 
-       p_cid = vmalloc(sizeof(*p_cid));
+       p_cid = vzalloc(sizeof(*p_cid));
        if (!p_cid)
                return NULL;
-       memset(p_cid, 0, sizeof(*p_cid));
 
        p_cid->opaque_fid = opaque_fid;
        p_cid->cid = cid;
-- 
2.7.4

Reply via email to