diff mbox

[2/9] scsi: qla2xxx: Use zeroing allocator rather than allocator/memset

Message ID 1514647712-6332-3-git-send-email-himanshujha199640@gmail.com (mailing list archive)
State Accepted
Headers show

Commit Message

Himanshu Jha Dec. 30, 2017, 3:28 p.m. UTC
Use dma_zalloc_coherent and vzalloc instead of dma_alloc_coherent and
vmalloc respectively, followed by memset 0.

Generated-by: scripts/coccinelle/api/alloc/kzalloc-simple.cocci

Suggested-by: Luis R. Rodriguez <mcgrof@kernel.org>
Signed-off-by: Himanshu Jha <himanshujha199640@gmail.com>
---
 drivers/scsi/qla2xxx/qla_attr.c    | 5 ++---
 drivers/scsi/qla2xxx/qla_bsg.c     | 9 +++------
 drivers/scsi/qla2xxx/tcm_qla2xxx.c | 5 +----
 3 files changed, 6 insertions(+), 13 deletions(-)

Comments

Madhani, Himanshu Jan. 2, 2018, 5:01 p.m. UTC | #1
> On Dec 30, 2017, at 7:28 AM, Himanshu Jha <himanshujha199640@gmail.com> wrote:
> 
> Use dma_zalloc_coherent and vzalloc instead of dma_alloc_coherent and
> vmalloc respectively, followed by memset 0.
> 
> Generated-by: scripts/coccinelle/api/alloc/kzalloc-simple.cocci
> 
> Suggested-by: Luis R. Rodriguez <mcgrof@kernel.org>
> Signed-off-by: Himanshu Jha <himanshujha199640@gmail.com>
> ---
> drivers/scsi/qla2xxx/qla_attr.c    | 5 ++---
> drivers/scsi/qla2xxx/qla_bsg.c     | 9 +++------
> drivers/scsi/qla2xxx/tcm_qla2xxx.c | 5 +----
> 3 files changed, 6 insertions(+), 13 deletions(-)
> 
> diff --git a/drivers/scsi/qla2xxx/qla_attr.c b/drivers/scsi/qla2xxx/qla_attr.c
> index 9ce28c4..f46b015 100644
> --- a/drivers/scsi/qla2xxx/qla_attr.c
> +++ b/drivers/scsi/qla2xxx/qla_attr.c
> @@ -1843,14 +1843,13 @@ qla2x00_get_fc_host_stats(struct Scsi_Host *shost)
> 	if (qla2x00_reset_active(vha))
> 		goto done;
> 
> -	stats = dma_alloc_coherent(&ha->pdev->dev,
> -	    sizeof(*stats), &stats_dma, GFP_KERNEL);
> +	stats = dma_zalloc_coherent(&ha->pdev->dev, sizeof(*stats),
> +				    &stats_dma, GFP_KERNEL);
> 	if (!stats) {
> 		ql_log(ql_log_warn, vha, 0x707d,
> 		    "Failed to allocate memory for stats.\n");
> 		goto done;
> 	}
> -	memset(stats, 0, sizeof(*stats));
> 
> 	rval = QLA_FUNCTION_FAILED;
> 	if (IS_FWI2_CAPABLE(ha)) {
> diff --git a/drivers/scsi/qla2xxx/qla_bsg.c b/drivers/scsi/qla2xxx/qla_bsg.c
> index e3ac707..e2d5d3c 100644
> --- a/drivers/scsi/qla2xxx/qla_bsg.c
> +++ b/drivers/scsi/qla2xxx/qla_bsg.c
> @@ -1435,7 +1435,7 @@ qla2x00_optrom_setup(struct bsg_job *bsg_job, scsi_qla_host_t *vha,
> 		ha->optrom_state = QLA_SREADING;
> 	}
> 
> -	ha->optrom_buffer = vmalloc(ha->optrom_region_size);
> +	ha->optrom_buffer = vzalloc(ha->optrom_region_size);
> 	if (!ha->optrom_buffer) {
> 		ql_log(ql_log_warn, vha, 0x7059,
> 		    "Read: Unable to allocate memory for optrom retrieval "
> @@ -1445,7 +1445,6 @@ qla2x00_optrom_setup(struct bsg_job *bsg_job, scsi_qla_host_t *vha,
> 		return -ENOMEM;
> 	}
> 
> -	memset(ha->optrom_buffer, 0, ha->optrom_region_size);
> 	return 0;
> }
> 
> @@ -2314,16 +2313,14 @@ qla2x00_get_priv_stats(struct bsg_job *bsg_job)
> 	if (!IS_FWI2_CAPABLE(ha))
> 		return -EPERM;
> 
> -	stats = dma_alloc_coherent(&ha->pdev->dev,
> -		sizeof(*stats), &stats_dma, GFP_KERNEL);
> +	stats = dma_zalloc_coherent(&ha->pdev->dev, sizeof(*stats),
> +				    &stats_dma, GFP_KERNEL);
> 	if (!stats) {
> 		ql_log(ql_log_warn, vha, 0x70e2,
> 		    "Failed to allocate memory for stats.\n");
> 		return -ENOMEM;
> 	}
> 
> -	memset(stats, 0, sizeof(*stats));
> -
> 	rval = qla24xx_get_isp_stats(base_vha, stats, stats_dma, options);
> 
> 	if (rval == QLA_SUCCESS) {
> diff --git a/drivers/scsi/qla2xxx/tcm_qla2xxx.c b/drivers/scsi/qla2xxx/tcm_qla2xxx.c
> index 3f82ea1..aadfeaa 100644
> --- a/drivers/scsi/qla2xxx/tcm_qla2xxx.c
> +++ b/drivers/scsi/qla2xxx/tcm_qla2xxx.c
> @@ -1635,16 +1635,13 @@ static int tcm_qla2xxx_init_lport(struct tcm_qla2xxx_lport *lport)
> 		return rc;
> 	}
> 
> -	lport->lport_loopid_map = vmalloc(sizeof(struct tcm_qla2xxx_fc_loopid) *
> -				65536);
> +	lport->lport_loopid_map = vzalloc(sizeof(struct tcm_qla2xxx_fc_loopid) * 65536);
> 	if (!lport->lport_loopid_map) {
> 		pr_err("Unable to allocate lport->lport_loopid_map of %zu bytes\n",
> 		    sizeof(struct tcm_qla2xxx_fc_loopid) * 65536);
> 		btree_destroy32(&lport->lport_fcport_map);
> 		return -ENOMEM;
> 	}
> -	memset(lport->lport_loopid_map, 0, sizeof(struct tcm_qla2xxx_fc_loopid)
> -	       * 65536);
> 	pr_debug("qla2xxx: Allocated lport_loopid_map of %zu bytes\n",
> 	       sizeof(struct tcm_qla2xxx_fc_loopid) * 65536);
> 	return 0;
> -- 
> 2.7.4
> 

Looks good

Acked-by: Himanshu Madhani <himanshu.madhani@cavium.com>
Martin K. Petersen Jan. 4, 2018, 6:09 a.m. UTC | #2
Himanshu,

> Use dma_zalloc_coherent and vzalloc instead of dma_alloc_coherent and
> vmalloc respectively, followed by memset 0.

Applied to 4.16/scsi-queue.
diff mbox

Patch

diff --git a/drivers/scsi/qla2xxx/qla_attr.c b/drivers/scsi/qla2xxx/qla_attr.c
index 9ce28c4..f46b015 100644
--- a/drivers/scsi/qla2xxx/qla_attr.c
+++ b/drivers/scsi/qla2xxx/qla_attr.c
@@ -1843,14 +1843,13 @@  qla2x00_get_fc_host_stats(struct Scsi_Host *shost)
 	if (qla2x00_reset_active(vha))
 		goto done;
 
-	stats = dma_alloc_coherent(&ha->pdev->dev,
-	    sizeof(*stats), &stats_dma, GFP_KERNEL);
+	stats = dma_zalloc_coherent(&ha->pdev->dev, sizeof(*stats),
+				    &stats_dma, GFP_KERNEL);
 	if (!stats) {
 		ql_log(ql_log_warn, vha, 0x707d,
 		    "Failed to allocate memory for stats.\n");
 		goto done;
 	}
-	memset(stats, 0, sizeof(*stats));
 
 	rval = QLA_FUNCTION_FAILED;
 	if (IS_FWI2_CAPABLE(ha)) {
diff --git a/drivers/scsi/qla2xxx/qla_bsg.c b/drivers/scsi/qla2xxx/qla_bsg.c
index e3ac707..e2d5d3c 100644
--- a/drivers/scsi/qla2xxx/qla_bsg.c
+++ b/drivers/scsi/qla2xxx/qla_bsg.c
@@ -1435,7 +1435,7 @@  qla2x00_optrom_setup(struct bsg_job *bsg_job, scsi_qla_host_t *vha,
 		ha->optrom_state = QLA_SREADING;
 	}
 
-	ha->optrom_buffer = vmalloc(ha->optrom_region_size);
+	ha->optrom_buffer = vzalloc(ha->optrom_region_size);
 	if (!ha->optrom_buffer) {
 		ql_log(ql_log_warn, vha, 0x7059,
 		    "Read: Unable to allocate memory for optrom retrieval "
@@ -1445,7 +1445,6 @@  qla2x00_optrom_setup(struct bsg_job *bsg_job, scsi_qla_host_t *vha,
 		return -ENOMEM;
 	}
 
-	memset(ha->optrom_buffer, 0, ha->optrom_region_size);
 	return 0;
 }
 
@@ -2314,16 +2313,14 @@  qla2x00_get_priv_stats(struct bsg_job *bsg_job)
 	if (!IS_FWI2_CAPABLE(ha))
 		return -EPERM;
 
-	stats = dma_alloc_coherent(&ha->pdev->dev,
-		sizeof(*stats), &stats_dma, GFP_KERNEL);
+	stats = dma_zalloc_coherent(&ha->pdev->dev, sizeof(*stats),
+				    &stats_dma, GFP_KERNEL);
 	if (!stats) {
 		ql_log(ql_log_warn, vha, 0x70e2,
 		    "Failed to allocate memory for stats.\n");
 		return -ENOMEM;
 	}
 
-	memset(stats, 0, sizeof(*stats));
-
 	rval = qla24xx_get_isp_stats(base_vha, stats, stats_dma, options);
 
 	if (rval == QLA_SUCCESS) {
diff --git a/drivers/scsi/qla2xxx/tcm_qla2xxx.c b/drivers/scsi/qla2xxx/tcm_qla2xxx.c
index 3f82ea1..aadfeaa 100644
--- a/drivers/scsi/qla2xxx/tcm_qla2xxx.c
+++ b/drivers/scsi/qla2xxx/tcm_qla2xxx.c
@@ -1635,16 +1635,13 @@  static int tcm_qla2xxx_init_lport(struct tcm_qla2xxx_lport *lport)
 		return rc;
 	}
 
-	lport->lport_loopid_map = vmalloc(sizeof(struct tcm_qla2xxx_fc_loopid) *
-				65536);
+	lport->lport_loopid_map = vzalloc(sizeof(struct tcm_qla2xxx_fc_loopid) * 65536);
 	if (!lport->lport_loopid_map) {
 		pr_err("Unable to allocate lport->lport_loopid_map of %zu bytes\n",
 		    sizeof(struct tcm_qla2xxx_fc_loopid) * 65536);
 		btree_destroy32(&lport->lport_fcport_map);
 		return -ENOMEM;
 	}
-	memset(lport->lport_loopid_map, 0, sizeof(struct tcm_qla2xxx_fc_loopid)
-	       * 65536);
 	pr_debug("qla2xxx: Allocated lport_loopid_map of %zu bytes\n",
 	       sizeof(struct tcm_qla2xxx_fc_loopid) * 65536);
 	return 0;