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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> On Dec 30, 2017, at 7:28 AM, Himanshu Jha <himanshujha199640@xxxxxxxxx> 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@xxxxxxxxxx>
> Signed-off-by: Himanshu Jha <himanshujha199640@xxxxxxxxx>
> ---
> 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@xxxxxxxxxx>



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux