Message ID | 1514648877-7234-1-git-send-email-himanshujha199640@gmail.com (mailing list archive) |
---|---|
State | Changes Requested |
Headers | show |
> -----Original Message----- > From: Himanshu Jha [mailto:himanshujha199640@gmail.com] > Sent: Saturday, December 30, 2017 9:18 PM > To: martin.petersen@oracle.com; jejb@linux.vnet.ibm.com > Cc: kashyap.desai@broadcom.com; sumit.saxena@broadcom.com; > shivasharan.srikanteshwara@broadcom.com; > megaraidlinux.pdl@broadcom.com; linux-scsi@vger.kernel.org; linux- > kernel@vger.kernel.org; mcgrof@kernel.org; Himanshu Jha > <himanshujha199640@gmail.com> > Subject: [PATCH] scsi: megaraid: Use zeroing memory allocator than > allocator/memset > > Use pci_zalloc_consistent 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 <mcgrof@kernel.org> > Signed-off-by: Himanshu Jha <himanshujha199640@gmail.com> > --- > drivers/scsi/megaraid/megaraid_sas_base.c | 19 ++++++------------- > drivers/scsi/megaraid/megaraid_sas_fusion.c | 5 ++--- > 2 files changed, 8 insertions(+), 16 deletions(-) > Hi Himanshu, I can see one more allocation done in megasas_get_seq_num() that could make use of these changes. Rest of the changes looks fine. Also, there is a driver update patchset that I am planning to post today. Adding this patch first might require additional rebasing of this patchset. Would you be ok if I send a separate patch for this along with the change mentioned above once my patch series gets committed? That would save me some rebasing effort. :-) Thanks, Shivasharan
Hi Shivashran, On Thu, Jan 04, 2018 at 04:52:54PM +0530, Shivasharan Srikanteshwara wrote: > > -----Original Message----- > > From: Himanshu Jha [mailto:himanshujha199640@gmail.com] > > Sent: Saturday, December 30, 2017 9:18 PM > > To: martin.petersen@oracle.com; jejb@linux.vnet.ibm.com > > Cc: kashyap.desai@broadcom.com; sumit.saxena@broadcom.com; > > shivasharan.srikanteshwara@broadcom.com; > > megaraidlinux.pdl@broadcom.com; linux-scsi@vger.kernel.org; linux- > > kernel@vger.kernel.org; mcgrof@kernel.org; Himanshu Jha > > <himanshujha199640@gmail.com> > > Subject: [PATCH] scsi: megaraid: Use zeroing memory allocator than > > allocator/memset > > > > Use pci_zalloc_consistent 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 <mcgrof@kernel.org> > > Signed-off-by: Himanshu Jha <himanshujha199640@gmail.com> > > --- > > drivers/scsi/megaraid/megaraid_sas_base.c | 19 ++++++------------- > > drivers/scsi/megaraid/megaraid_sas_fusion.c | 5 ++--- > > 2 files changed, 8 insertions(+), 16 deletions(-) > > > > Hi Himanshu, > I can see one more allocation done in megasas_get_seq_num() that could > make use of these changes. Yes, I missed that case! Thanks for pointing that out. > Also, there is a driver update patchset that I am planning to post today. > Adding this patch first might require additional rebasing of this > patchset. > Would you be ok if I send a separate patch for this along with the change > mentioned above once my patch series gets committed? > That would save me some rebasing effort. :-) Yeah, sure! I have no objections for it. But this patch was not in the patchseries that I sent a while ago https://lkml.org/lkml/2017/12/30/77 Thanks Himanshu Jha
diff --git a/drivers/scsi/megaraid/megaraid_sas_base.c b/drivers/scsi/megaraid/megaraid_sas_base.c index 2c8cfa2..62959d0 100644 --- a/drivers/scsi/megaraid/megaraid_sas_base.c +++ b/drivers/scsi/megaraid/megaraid_sas_base.c @@ -2222,10 +2222,9 @@ static int megasas_get_ld_vf_affiliation_111(struct megasas_instance *instance, memset(instance->vf_affiliation_111, 0, sizeof(struct MR_LD_VF_AFFILIATION_111)); else { - new_affiliation_111 = - pci_alloc_consistent(instance->pdev, - sizeof(struct MR_LD_VF_AFFILIATION_111), - &new_affiliation_111_h); + new_affiliation_111 = + pci_zalloc_consistent(instance->pdev, + sizeof(struct MR_LD_VF_AFFILIATION_111), + &new_affiliation_111_h); if (!new_affiliation_111) { dev_printk(KERN_DEBUG, &instance->pdev->dev, "SR-IOV: Couldn't allocate " "memory for new affiliation for scsi%d\n", @@ -2233,8 +2232,6 @@ static int megasas_get_ld_vf_affiliation_111(struct megasas_instance *instance, megasas_return_cmd(instance, cmd); return -ENOMEM; } - memset(new_affiliation_111, 0, - sizeof(struct MR_LD_VF_AFFILIATION_111)); } memset(dcmd->mbox.b, 0, MFI_MBOX_SIZE); @@ -2331,11 +2328,9 @@ static int megasas_get_ld_vf_affiliation_12(struct megasas_instance *instance, memset(instance->vf_affiliation, 0, (MAX_LOGICAL_DRIVES + 1) * sizeof(struct MR_LD_VF_AFFILIATION)); else { - new_affiliation = - pci_alloc_consistent(instance->pdev, - (MAX_LOGICAL_DRIVES + 1) * - sizeof(struct MR_LD_VF_AFFILIATION), - &new_affiliation_h); + new_affiliation = + pci_zalloc_consistent(instance->pdev, + (MAX_LOGICAL_DRIVES + 1) * + sizeof(struct MR_LD_VF_AFFILIATION), + &new_affiliation_h); if (!new_affiliation) { dev_printk(KERN_DEBUG, &instance->pdev->dev, "SR-IOV: Couldn't allocate " "memory for new affiliation for scsi%d\n", @@ -2343,8 +2338,6 @@ static int megasas_get_ld_vf_affiliation_12(struct megasas_instance *instance, megasas_return_cmd(instance, cmd); return -ENOMEM; } - memset(new_affiliation, 0, (MAX_LOGICAL_DRIVES + 1) * - sizeof(struct MR_LD_VF_AFFILIATION)); } memset(dcmd->mbox.b, 0, MFI_MBOX_SIZE); diff --git a/drivers/scsi/megaraid/megaraid_sas_fusion.c b/drivers/scsi/megaraid/megaraid_sas_fusion.c index 65dc4fe..5f61b93 100644 --- a/drivers/scsi/megaraid/megaraid_sas_fusion.c +++ b/drivers/scsi/megaraid/megaraid_sas_fusion.c @@ -690,15 +690,14 @@ megasas_alloc_rdpq_fusion(struct megasas_instance *instance) array_size = sizeof(struct MPI2_IOC_INIT_RDPQ_ARRAY_ENTRY) * MAX_MSIX_QUEUES_FUSION; - fusion->rdpq_virt = pci_alloc_consistent(instance->pdev, array_size, - &fusion->rdpq_phys); + fusion->rdpq_virt = pci_zalloc_consistent(instance->pdev, array_size, + &fusion->rdpq_phys); if (!fusion->rdpq_virt) { dev_err(&instance->pdev->dev, "Failed from %s %d\n", __func__, __LINE__); return -ENOMEM; } - memset(fusion->rdpq_virt, 0, array_size); msix_count = instance->msix_vectors > 0 ? instance->msix_vectors : 1; fusion->reply_frames_desc_pool = dma_pool_create("mr_rdpq",
Use pci_zalloc_consistent 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 <mcgrof@kernel.org> Signed-off-by: Himanshu Jha <himanshujha199640@gmail.com> --- drivers/scsi/megaraid/megaraid_sas_base.c | 19 ++++++------------- drivers/scsi/megaraid/megaraid_sas_fusion.c | 5 ++--- 2 files changed, 8 insertions(+), 16 deletions(-)