Re: [PATCH v2] scsi: be2iscsi: Use kasprintf
Jitendra, >> Use kasprintf instead of combination of kmalloc and sprintf. >> Also, remove BEISCSI_MSI_NAME macro used to specify size of string as >> kasprintf handles size computations. >> >> Signed-off-by: Himanshu Jha > Reviewed-by: Jitendra Bhivare Applied to 4.15/scsi-queue. -- Martin K. Petersen Oracle Linux Engineering
RE: [PATCH v2] scsi: be2iscsi: Use kasprintf
> -Original Message- > From: Himanshu Jha [mailto:himanshujha199...@gmail.com] > Sent: Wednesday, October 11, 2017 9:06 PM > To: j...@linux.vnet.ibm.com > Cc: martin.peter...@oracle.com; linux-scsi@vger.kernel.org; linux- > ker...@vger.kernel.org; subbu.seethara...@broadcom.com; > ketan.muka...@broadcom.com; jitendra.bhiv...@broadcom.com; > Himanshu Jha > Subject: [PATCH v2] scsi: be2iscsi: Use kasprintf > > Use kasprintf instead of combination of kmalloc and sprintf. > Also, remove BEISCSI_MSI_NAME macro used to specify size of string as > kasprintf handles size computations. > > Signed-off-by: Himanshu Jha > --- > v2: >-remove the unnecessary macro BEISCSI_MSI_NAME. > > drivers/scsi/be2iscsi/be_main.c | 12 +--- > drivers/scsi/be2iscsi/be_main.h | 2 -- > 2 files changed, 5 insertions(+), 9 deletions(-) > > diff --git a/drivers/scsi/be2iscsi/be_main.c b/drivers/scsi/be2iscsi/be_main.c > index b4542e7..6a9ee0e 100644 > --- a/drivers/scsi/be2iscsi/be_main.c > +++ b/drivers/scsi/be2iscsi/be_main.c > @@ -803,15 +803,14 @@ static int beiscsi_init_irqs(struct beiscsi_hba *phba) > > if (pcidev->msix_enabled) { > for (i = 0; i < phba->num_cpus; i++) { > - phba->msi_name[i] = kzalloc(BEISCSI_MSI_NAME, > - GFP_KERNEL); > + phba->msi_name[i] = kasprintf(GFP_KERNEL, > + "beiscsi_%02x_%02x", > + phba->shost->host_no, i); > if (!phba->msi_name[i]) { > ret = -ENOMEM; > goto free_msix_irqs; > } > > - sprintf(phba->msi_name[i], "beiscsi_%02x_%02x", > - phba->shost->host_no, i); > ret = request_irq(pci_irq_vector(pcidev, i), > be_isr_msix, 0, phba->msi_name[i], > &phwi_context->be_eq[i]); > @@ -824,13 +823,12 @@ static int beiscsi_init_irqs(struct beiscsi_hba *phba) > goto free_msix_irqs; > } > } > - phba->msi_name[i] = kzalloc(BEISCSI_MSI_NAME, > GFP_KERNEL); > + phba->msi_name[i] = kasprintf(GFP_KERNEL, > "beiscsi_mcc_%02x", > + phba->shost->host_no); > if (!phba->msi_name[i]) { > ret = -ENOMEM; > goto free_msix_irqs; > } > - sprintf(phba->msi_name[i], "beiscsi_mcc_%02x", > - phba->shost->host_no); > ret = request_irq(pci_irq_vector(pcidev, i), be_isr_mcc, 0, > phba->msi_name[i], &phwi_context- > >be_eq[i]); > if (ret) { > diff --git a/drivers/scsi/be2iscsi/be_main.h b/drivers/scsi/be2iscsi/be_main.h > index 81ce3ff..8166de5 100644 > --- a/drivers/scsi/be2iscsi/be_main.h > +++ b/drivers/scsi/be2iscsi/be_main.h > @@ -155,8 +155,6 @@ > #define PAGES_REQUIRED(x) \ > ((x < PAGE_SIZE) ? 1 : ((x + PAGE_SIZE - 1) / PAGE_SIZE)) > > -#define BEISCSI_MSI_NAME 20 /* size of msi_name string */ > - > #define MEM_DESCR_OFFSET 8 > #define BEISCSI_DEFQ_HDR 1 > #define BEISCSI_DEFQ_DATA 0 > -- > 2.7.4 Looks good. - Thanks. Reviewed-by: Jitendra Bhivare
Re: [PATCH v2] scsi: be2iscsi: Use kasprintf
Himanshu, >> It is not. It needs a review/ack from the driver maintainers. > > What about Kyle Fortin's review ? Kyle's review is fine. But when a driver is actively maintained, like be2iscsi is, I always give ack/nack rights to the relevant maintainers. In this case that's Jitendra. -- Martin K. Petersen Oracle Linux Engineering
Re: [PATCH v2] scsi: be2iscsi: Use kasprintf
On Fri, Nov 03, 2017 at 11:25:05AM -0400, Martin K. Petersen wrote: Hi Martin, > > Himanshu, > > > Just a reminder, is my patch in our queue ? > > It is not. It needs a review/ack from the driver maintainers. What about Kyle Fortin's review ? > -- > Martin K. PetersenOracle Linux Engineering Thanks Himanshu
Re: [PATCH v2] scsi: be2iscsi: Use kasprintf
Himanshu, > Just a reminder, is my patch in our queue ? It is not. It needs a review/ack from the driver maintainers. -- Martin K. Petersen Oracle Linux Engineering
Re: [PATCH v2] scsi: be2iscsi: Use kasprintf
On Wed, Oct 11, 2017 at 09:06:14PM +0530, Himanshu Jha wrote: Hi James, Just a reminder, is my patch in our queue ? Thanks Himanshu Jha > Use kasprintf instead of combination of kmalloc and sprintf. > Also, remove BEISCSI_MSI_NAME macro used to specify size of string as > kasprintf handles size computations. > > Signed-off-by: Himanshu Jha > --- > v2: >-remove the unnecessary macro BEISCSI_MSI_NAME. > > drivers/scsi/be2iscsi/be_main.c | 12 +--- > drivers/scsi/be2iscsi/be_main.h | 2 -- > 2 files changed, 5 insertions(+), 9 deletions(-) > > diff --git a/drivers/scsi/be2iscsi/be_main.c b/drivers/scsi/be2iscsi/be_main.c > index b4542e7..6a9ee0e 100644 > --- a/drivers/scsi/be2iscsi/be_main.c > +++ b/drivers/scsi/be2iscsi/be_main.c > @@ -803,15 +803,14 @@ static int beiscsi_init_irqs(struct beiscsi_hba *phba) > > if (pcidev->msix_enabled) { > for (i = 0; i < phba->num_cpus; i++) { > - phba->msi_name[i] = kzalloc(BEISCSI_MSI_NAME, > - GFP_KERNEL); > + phba->msi_name[i] = kasprintf(GFP_KERNEL, > + "beiscsi_%02x_%02x", > + phba->shost->host_no, i); > if (!phba->msi_name[i]) { > ret = -ENOMEM; > goto free_msix_irqs; > } > > - sprintf(phba->msi_name[i], "beiscsi_%02x_%02x", > - phba->shost->host_no, i); > ret = request_irq(pci_irq_vector(pcidev, i), > be_isr_msix, 0, phba->msi_name[i], > &phwi_context->be_eq[i]); > @@ -824,13 +823,12 @@ static int beiscsi_init_irqs(struct beiscsi_hba *phba) > goto free_msix_irqs; > } > } > - phba->msi_name[i] = kzalloc(BEISCSI_MSI_NAME, GFP_KERNEL); > + phba->msi_name[i] = kasprintf(GFP_KERNEL, "beiscsi_mcc_%02x", > + phba->shost->host_no); > if (!phba->msi_name[i]) { > ret = -ENOMEM; > goto free_msix_irqs; > } > - sprintf(phba->msi_name[i], "beiscsi_mcc_%02x", > - phba->shost->host_no); > ret = request_irq(pci_irq_vector(pcidev, i), be_isr_mcc, 0, > phba->msi_name[i], &phwi_context->be_eq[i]); > if (ret) { > diff --git a/drivers/scsi/be2iscsi/be_main.h b/drivers/scsi/be2iscsi/be_main.h > index 81ce3ff..8166de5 100644 > --- a/drivers/scsi/be2iscsi/be_main.h > +++ b/drivers/scsi/be2iscsi/be_main.h > @@ -155,8 +155,6 @@ > #define PAGES_REQUIRED(x) \ > ((x < PAGE_SIZE) ? 1 : ((x + PAGE_SIZE - 1) / PAGE_SIZE)) > > -#define BEISCSI_MSI_NAME 20 /* size of msi_name string */ > - > #define MEM_DESCR_OFFSET 8 > #define BEISCSI_DEFQ_HDR 1 > #define BEISCSI_DEFQ_DATA 0 > -- > 2.7.4 >
Re: [PATCH v2] scsi: be2iscsi: Use kasprintf
On Oct 11, 2017, at 11:36 AM, Himanshu Jha wrote: > > Use kasprintf instead of combination of kmalloc and sprintf. > Also, remove BEISCSI_MSI_NAME macro used to specify size of string as > kasprintf handles size computations. > > Signed-off-by: Himanshu Jha > --- > v2: > -remove the unnecessary macro BEISCSI_MSI_NAME. > > drivers/scsi/be2iscsi/be_main.c | 12 +--- > drivers/scsi/be2iscsi/be_main.h | 2 -- > 2 files changed, 5 insertions(+), 9 deletions(-) > > diff --git a/drivers/scsi/be2iscsi/be_main.c b/drivers/scsi/be2iscsi/be_main.c > index b4542e7..6a9ee0e 100644 > --- a/drivers/scsi/be2iscsi/be_main.c > +++ b/drivers/scsi/be2iscsi/be_main.c > @@ -803,15 +803,14 @@ static int beiscsi_init_irqs(struct beiscsi_hba *phba) > > if (pcidev->msix_enabled) { > for (i = 0; i < phba->num_cpus; i++) { > - phba->msi_name[i] = kzalloc(BEISCSI_MSI_NAME, > - GFP_KERNEL); > + phba->msi_name[i] = kasprintf(GFP_KERNEL, > + "beiscsi_%02x_%02x", > + phba->shost->host_no, i); > if (!phba->msi_name[i]) { > ret = -ENOMEM; > goto free_msix_irqs; > } > > - sprintf(phba->msi_name[i], "beiscsi_%02x_%02x", > - phba->shost->host_no, i); > ret = request_irq(pci_irq_vector(pcidev, i), > be_isr_msix, 0, phba->msi_name[i], > &phwi_context->be_eq[i]); > @@ -824,13 +823,12 @@ static int beiscsi_init_irqs(struct beiscsi_hba *phba) > goto free_msix_irqs; > } > } > - phba->msi_name[i] = kzalloc(BEISCSI_MSI_NAME, GFP_KERNEL); > + phba->msi_name[i] = kasprintf(GFP_KERNEL, "beiscsi_mcc_%02x", > + phba->shost->host_no); > if (!phba->msi_name[i]) { > ret = -ENOMEM; > goto free_msix_irqs; > } > - sprintf(phba->msi_name[i], "beiscsi_mcc_%02x", > - phba->shost->host_no); > ret = request_irq(pci_irq_vector(pcidev, i), be_isr_mcc, 0, > phba->msi_name[i], &phwi_context->be_eq[i]); > if (ret) { > diff --git a/drivers/scsi/be2iscsi/be_main.h b/drivers/scsi/be2iscsi/be_main.h > index 81ce3ff..8166de5 100644 > --- a/drivers/scsi/be2iscsi/be_main.h > +++ b/drivers/scsi/be2iscsi/be_main.h > @@ -155,8 +155,6 @@ > #define PAGES_REQUIRED(x) \ > ((x < PAGE_SIZE) ? 1 : ((x + PAGE_SIZE - 1) / PAGE_SIZE)) > > -#define BEISCSI_MSI_NAME 20 /* size of msi_name string */ > - > #define MEM_DESCR_OFFSET 8 > #define BEISCSI_DEFQ_HDR 1 > #define BEISCSI_DEFQ_DATA 0 > -- > 2.7.4 > Looks good. Reviewed-by: Kyle Fortin
[PATCH v2] scsi: be2iscsi: Use kasprintf
Use kasprintf instead of combination of kmalloc and sprintf. Also, remove BEISCSI_MSI_NAME macro used to specify size of string as kasprintf handles size computations. Signed-off-by: Himanshu Jha --- v2: -remove the unnecessary macro BEISCSI_MSI_NAME. drivers/scsi/be2iscsi/be_main.c | 12 +--- drivers/scsi/be2iscsi/be_main.h | 2 -- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/drivers/scsi/be2iscsi/be_main.c b/drivers/scsi/be2iscsi/be_main.c index b4542e7..6a9ee0e 100644 --- a/drivers/scsi/be2iscsi/be_main.c +++ b/drivers/scsi/be2iscsi/be_main.c @@ -803,15 +803,14 @@ static int beiscsi_init_irqs(struct beiscsi_hba *phba) if (pcidev->msix_enabled) { for (i = 0; i < phba->num_cpus; i++) { - phba->msi_name[i] = kzalloc(BEISCSI_MSI_NAME, - GFP_KERNEL); + phba->msi_name[i] = kasprintf(GFP_KERNEL, + "beiscsi_%02x_%02x", + phba->shost->host_no, i); if (!phba->msi_name[i]) { ret = -ENOMEM; goto free_msix_irqs; } - sprintf(phba->msi_name[i], "beiscsi_%02x_%02x", - phba->shost->host_no, i); ret = request_irq(pci_irq_vector(pcidev, i), be_isr_msix, 0, phba->msi_name[i], &phwi_context->be_eq[i]); @@ -824,13 +823,12 @@ static int beiscsi_init_irqs(struct beiscsi_hba *phba) goto free_msix_irqs; } } - phba->msi_name[i] = kzalloc(BEISCSI_MSI_NAME, GFP_KERNEL); + phba->msi_name[i] = kasprintf(GFP_KERNEL, "beiscsi_mcc_%02x", + phba->shost->host_no); if (!phba->msi_name[i]) { ret = -ENOMEM; goto free_msix_irqs; } - sprintf(phba->msi_name[i], "beiscsi_mcc_%02x", - phba->shost->host_no); ret = request_irq(pci_irq_vector(pcidev, i), be_isr_mcc, 0, phba->msi_name[i], &phwi_context->be_eq[i]); if (ret) { diff --git a/drivers/scsi/be2iscsi/be_main.h b/drivers/scsi/be2iscsi/be_main.h index 81ce3ff..8166de5 100644 --- a/drivers/scsi/be2iscsi/be_main.h +++ b/drivers/scsi/be2iscsi/be_main.h @@ -155,8 +155,6 @@ #define PAGES_REQUIRED(x) \ ((x < PAGE_SIZE) ? 1 : ((x + PAGE_SIZE - 1) / PAGE_SIZE)) -#define BEISCSI_MSI_NAME 20 /* size of msi_name string */ - #define MEM_DESCR_OFFSET 8 #define BEISCSI_DEFQ_HDR 1 #define BEISCSI_DEFQ_DATA 0 -- 2.7.4