On 30/12/17 8:58 PM, "Himanshu Jha" <himanshujha199...@gmail.com> wrote:

>Use dma_zalloc_coherent instead of dma_alloc_coherent followed by memset
>0.
>
>Generated-by: scripts/coccinelle/api/alloc/kzalloc-simple.cocci
>
>Suggested-by: Luis R. Rodriguez <mcg...@kernel.org>
>Signed-off-by: Himanshu Jha <himanshujha199...@gmail.com>
>---
> drivers/scsi/qedi/qedi_main.c | 42
>+++++++++++++++---------------------------
> 1 file changed, 15 insertions(+), 27 deletions(-)
>
>diff --git a/drivers/scsi/qedi/qedi_main.c b/drivers/scsi/qedi/qedi_main.c
>index cccc34a..5ef0b36 100644
>--- a/drivers/scsi/qedi/qedi_main.c
>+++ b/drivers/scsi/qedi/qedi_main.c
>@@ -1268,16 +1268,14 @@ static int qedi_alloc_bdq(struct qedi_ctx *qedi)
>       }
> 
>       /* Allocate list of PBL pages */
>-      qedi->bdq_pbl_list = dma_alloc_coherent(&qedi->pdev->dev,
>-                                              PAGE_SIZE,
>-                                              &qedi->bdq_pbl_list_dma,
>-                                              GFP_KERNEL);
>+      qedi->bdq_pbl_list = dma_zalloc_coherent(&qedi->pdev->dev, PAGE_SIZE,
>+                                               &qedi->bdq_pbl_list_dma,
>+                                               GFP_KERNEL);
>       if (!qedi->bdq_pbl_list) {
>               QEDI_ERR(&qedi->dbg_ctx,
>                        "Could not allocate list of PBL pages.\n");
>               return -ENOMEM;
>       }
>-      memset(qedi->bdq_pbl_list, 0, PAGE_SIZE);
> 
>       /*
>        * Now populate PBL list with pages that contain pointers to the
>@@ -1367,11 +1365,10 @@ static int qedi_alloc_global_queues(struct
>qedi_ctx *qedi)
>                   (qedi->global_queues[i]->cq_pbl_size +
>                   (QEDI_PAGE_SIZE - 1));
> 
>-              qedi->global_queues[i]->cq =
>-                  dma_alloc_coherent(&qedi->pdev->dev,
>-                                     qedi->global_queues[i]->cq_mem_size,
>-                                     &qedi->global_queues[i]->cq_dma,
>-                                     GFP_KERNEL);
>+              qedi->global_queues[i]->cq =
>+                      dma_zalloc_coherent(&qedi->pdev->dev,
>+                                      qedi->global_queues[i]->cq_mem_size,
>+                                      &qedi->global_queues[i]->cq_dma,
>+                                      GFP_KERNEL);
> 
>               if (!qedi->global_queues[i]->cq) {
>                       QEDI_WARN(&qedi->dbg_ctx,
>@@ -1379,14 +1376,10 @@ static int qedi_alloc_global_queues(struct
>qedi_ctx *qedi)
>                       status = -ENOMEM;
>                       goto mem_alloc_failure;
>               }
>-              memset(qedi->global_queues[i]->cq, 0,
>-                     qedi->global_queues[i]->cq_mem_size);
>-
>-              qedi->global_queues[i]->cq_pbl =
>-                  dma_alloc_coherent(&qedi->pdev->dev,
>-                                     qedi->global_queues[i]->cq_pbl_size,
>-                                     &qedi->global_queues[i]->cq_pbl_dma,
>-                                     GFP_KERNEL);
>+              qedi->global_queues[i]->cq_pbl =
>+                      dma_zalloc_coherent(&qedi->pdev->dev,
>+                                      qedi->global_queues[i]->cq_pbl_size,
>+                                      &qedi->global_queues[i]->cq_pbl_dma,
>+                                      GFP_KERNEL);
> 
>               if (!qedi->global_queues[i]->cq_pbl) {
>                       QEDI_WARN(&qedi->dbg_ctx,
>@@ -1394,8 +1387,6 @@ static int qedi_alloc_global_queues(struct qedi_ctx
>*qedi)
>                       status = -ENOMEM;
>                       goto mem_alloc_failure;
>               }
>-              memset(qedi->global_queues[i]->cq_pbl, 0,
>-                     qedi->global_queues[i]->cq_pbl_size);
> 
>               /* Create PBL */
>               num_pages = qedi->global_queues[i]->cq_mem_size /
>@@ -1456,25 +1447,22 @@ int qedi_alloc_sq(struct qedi_ctx *qedi, struct
>qedi_endpoint *ep)
>       ep->sq_pbl_size = (ep->sq_mem_size / QEDI_PAGE_SIZE) * sizeof(void *);
>       ep->sq_pbl_size = ep->sq_pbl_size + QEDI_PAGE_SIZE;
> 
>-      ep->sq = dma_alloc_coherent(&qedi->pdev->dev, ep->sq_mem_size,
>-                                  &ep->sq_dma, GFP_KERNEL);
>+      ep->sq = dma_zalloc_coherent(&qedi->pdev->dev, ep->sq_mem_size,
>+                                   &ep->sq_dma, GFP_KERNEL);
>       if (!ep->sq) {
>               QEDI_WARN(&qedi->dbg_ctx,
>                         "Could not allocate send queue.\n");
>               rval = -ENOMEM;
>               goto out;
>       }
>-      memset(ep->sq, 0, ep->sq_mem_size);
>-
>-      ep->sq_pbl = dma_alloc_coherent(&qedi->pdev->dev, ep->sq_pbl_size,
>-                                      &ep->sq_pbl_dma, GFP_KERNEL);
>+      ep->sq_pbl = dma_zalloc_coherent(&qedi->pdev->dev, ep->sq_pbl_size,
>+                                       &ep->sq_pbl_dma, GFP_KERNEL);
>       if (!ep->sq_pbl) {
>               QEDI_WARN(&qedi->dbg_ctx,
>                         "Could not allocate send queue PBL.\n");
>               rval = -ENOMEM;
>               goto out_free_sq;
>       }
>-      memset(ep->sq_pbl, 0, ep->sq_pbl_size);
> 
>       /* Create PBL */
>       num_pages = ep->sq_mem_size / QEDI_PAGE_SIZE;
>-- 
>2.7.4

Acked-by: Manish Rangankar <manish.rangan...@cavium.com>

>

Reply via email to