2018-10-18 16:07:37

by Sabyasachi Gupta

[permalink] [raw]
Subject: [PATCH] scsi/mvsas/mv_sas.c: Use dma_pool_zalloc

Replaced dma_pool_alloc + memset with dma_pool_zalloc
Signed-off-by: Sabyasachi Gupta <[email protected]>
---
drivers/scsi/mvsas/mv_sas.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/scsi/mvsas/mv_sas.c b/drivers/scsi/mvsas/mv_sas.c
index cff43bd..d00d37d 100644
--- a/drivers/scsi/mvsas/mv_sas.c
+++ b/drivers/scsi/mvsas/mv_sas.c
@@ -790,12 +790,11 @@ static int mvs_task_prep(struct sas_task *task, struct mvs_info *mvi, int is_tmf
slot->n_elem = n_elem;
slot->slot_tag = tag;

- slot->buf = dma_pool_alloc(mvi->dma_pool, GFP_ATOMIC, &slot->buf_dma);
+ slot->buf = dma_pool_zalloc(mvi->dma_pool, GFP_ATOMIC, &slot->buf_dma);
if (!slot->buf) {
rc = -ENOMEM;
goto err_out_tag;
}
- memset(slot->buf, 0, MVS_SLOT_BUF_SZ);

tei.task = task;
tei.hdr = &mvi->slot[tag];
--
2.7.4



2018-10-18 16:21:06

by Jack Wang

[permalink] [raw]
Subject: Re: [PATCH] scsi/mvsas/mv_sas.c: Use dma_pool_zalloc

On Thu, Oct 18, 2018 at 6:06 PM Sabyasachi Gupta
<[email protected]> wrote:
>
> Replaced dma_pool_alloc + memset with dma_pool_zalloc
> Signed-off-by: Sabyasachi Gupta <[email protected]>
Reviewed-by: Jack Wang <[email protected]>
Thanks!
> ---
> drivers/scsi/mvsas/mv_sas.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)



--
Jack Wang
Linux Kernel Developer

ProfitBricks GmbH
Greifswalder Str. 207
D - 10405 Berlin

Tel: +49 30 577 008 042
Fax: +49 30 577 008 299
Email: [email protected]
URL: https://www.profitbricks.de

Sitz der Gesellschaft: Berlin
Registergericht: Amtsgericht Charlottenburg, HRB 125506 B
Geschäftsführer: Achim Weiss, Matthias Steinberg, Christoph Steffens

2018-10-18 16:33:59

by John Garry

[permalink] [raw]
Subject: Re: [PATCH] scsi/mvsas/mv_sas.c: Use dma_pool_zalloc

On 18/10/2018 17:06, Sabyasachi Gupta wrote:
> Replaced dma_pool_alloc + memset with dma_pool_zalloc
> Signed-off-by: Sabyasachi Gupta <[email protected]>
> ---
> drivers/scsi/mvsas/mv_sas.c | 3 +--
> 1 file changed, 1 insertion(+), 2 deletions(-)
>
> diff --git a/drivers/scsi/mvsas/mv_sas.c b/drivers/scsi/mvsas/mv_sas.c
> index cff43bd..d00d37d 100644
> --- a/drivers/scsi/mvsas/mv_sas.c
> +++ b/drivers/scsi/mvsas/mv_sas.c
> @@ -790,12 +790,11 @@ static int mvs_task_prep(struct sas_task *task, struct mvs_info *mvi, int is_tmf
> slot->n_elem = n_elem;
> slot->slot_tag = tag;
>
> - slot->buf = dma_pool_alloc(mvi->dma_pool, GFP_ATOMIC, &slot->buf_dma);
> + slot->buf = dma_pool_zalloc(mvi->dma_pool, GFP_ATOMIC, &slot->buf_dma);
> if (!slot->buf) {
> rc = -ENOMEM;
> goto err_out_tag;
> }
> - memset(slot->buf, 0, MVS_SLOT_BUF_SZ);
>

How about also fixing these, below, up to use dma_zalloc_coherent() or
even dmam_alloc_coherent() [as they're manually free'd at removal]:

static int mvs_alloc(struct mvs_info *mvi, struct Scsi_Host *shost)
{
int i = 0, slot_nr;
char pool_name[32];
...
/*
* alloc and init our DMA areas
*/
mvi->tx = dma_alloc_coherent(mvi->dev,
sizeof(*mvi->tx) * MVS_CHIP_SLOT_SZ,
&mvi->tx_dma, GFP_KERNEL);
if (!mvi->tx)
goto err_out;
memset(mvi->tx, 0, sizeof(*mvi->tx) * MVS_CHIP_SLOT_SZ);

...

Thanks,
John

> tei.task = task;
> tei.hdr = &mvi->slot[tag];
>



2018-10-24 03:20:57

by Martin K. Petersen

[permalink] [raw]
Subject: Re: [PATCH] scsi/mvsas/mv_sas.c: Use dma_pool_zalloc


Sabyasachi,

> Replaced dma_pool_alloc + memset with dma_pool_zalloc

Applied to 4.20/scsi-queue, thank you.

--
Martin K. Petersen Oracle Linux Engineering