linux-scsi.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] lpfc: in sli3 use configured sg_seg_cnt for sg_tablesize
@ 2015-05-29 12:22 bstroesser
  2015-06-02 21:09 ` Sebastian Herbszt
  0 siblings, 1 reply; 4+ messages in thread
From: bstroesser @ 2015-05-29 12:22 UTC (permalink / raw)
  To: james.smart, linux-scsi; +Cc: bstroesser

Hi James,

We had some performance problems with RAID systems connected to LPe12k.
AFAICS, the reason is a small bug in lpfc.ko, causing the IO-size to
be smaller than expected.

The patch below fixes it for us.

Please CC me, I'm not on the list.

Best regards
Bodo


------------------------------------------------------

From: Bodo Stroesser <bstroesser@ts.fujitsu.com>
Date: Fri, 29 May 2015 13:34:19 +0200
Subject: [PATCH] lpfc: in sli3 use configured sg_seg_cnt for sg_tablesize

Currently the module parameter lpfc_sg_seg_count does not have effect
for sli3 devices.

In lpfc_sli_driver_resource_setup(), which is used for sli3, the code
writes the configured sg_seg_cnt into lpfc_template.sg_tablesize.
But lpfc_template is the template used for sli4 only. Thus the value should
correctly be written to lpfc_template_s3->sg_tablesize.

This patch is for kernel 4.1-rc5, but is tested with lpfc 10.2.405.26 only.

Signed-off-by: Bodo Stroesser <bstroesser@ts.fujitsu.com>
---

--- a/drivers/scsi/lpfc/lpfc_init.c	2015-05-29 10:19:02.000000000 +0200
+++ b/drivers/scsi/lpfc/lpfc_init.c	2015-05-29 10:19:56.000000000 +0200
@@ -4988,7 +4988,7 @@ lpfc_sli_driver_resource_setup(struct lp
 
 	/* Initialize the host templates the configured values. */
 	lpfc_vport_template.sg_tablesize = phba->cfg_sg_seg_cnt;
-	lpfc_template.sg_tablesize = phba->cfg_sg_seg_cnt;
+	lpfc_template_s3.sg_tablesize = phba->cfg_sg_seg_cnt;
 
 	/* There are going to be 2 reserved BDEs: 1 FCP cmnd + 1 FCP rsp */
 	if (phba->cfg_enable_bg) {

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] lpfc: in sli3 use configured sg_seg_cnt for sg_tablesize
       [not found] <10f4d2$5t7km8@dgate20u.abg.fsc.net>
@ 2015-05-29 14:05 ` James Smart
  2015-05-29 14:12   ` Strösser, Bodo
  0 siblings, 1 reply; 4+ messages in thread
From: James Smart @ 2015-05-29 14:05 UTC (permalink / raw)
  To: bstroesser, linux-scsi

Bodo,

This is a valid fix.  Thank you.

I assume you were changing the driver module parameter to up the SG 
count ?  without the fix we would have been capped at 64 sges.

-- james

Reviewed-By: James Smart <james.smart@avagotech.com>



On 5/29/2015 8:22 AM, bstroesser@ts.fujitsu.com wrote:
> Hi James,
>
> We had some performance problems with RAID systems connected to LPe12k.
> AFAICS, the reason is a small bug in lpfc.ko, causing the IO-size to
> be smaller than expected.
>
> The patch below fixes it for us.
>
> Please CC me, I'm not on the list.
>
> Best regards
> Bodo
>
>
> ------------------------------------------------------
>
> From: Bodo Stroesser <bstroesser@ts.fujitsu.com>
> Date: Fri, 29 May 2015 13:34:19 +0200
> Subject: [PATCH] lpfc: in sli3 use configured sg_seg_cnt for sg_tablesize
>
> Currently the module parameter lpfc_sg_seg_count does not have effect
> for sli3 devices.
>
> In lpfc_sli_driver_resource_setup(), which is used for sli3, the code
> writes the configured sg_seg_cnt into lpfc_template.sg_tablesize.
> But lpfc_template is the template used for sli4 only. Thus the value should
> correctly be written to lpfc_template_s3->sg_tablesize.
>
> This patch is for kernel 4.1-rc5, but is tested with lpfc 10.2.405.26 only.
>
> Signed-off-by: Bodo Stroesser <bstroesser@ts.fujitsu.com>
> ---
>
> --- a/drivers/scsi/lpfc/lpfc_init.c	2015-05-29 10:19:02.000000000 +0200
> +++ b/drivers/scsi/lpfc/lpfc_init.c	2015-05-29 10:19:56.000000000 +0200
> @@ -4988,7 +4988,7 @@ lpfc_sli_driver_resource_setup(struct lp
>   
>   	/* Initialize the host templates the configured values. */
>   	lpfc_vport_template.sg_tablesize = phba->cfg_sg_seg_cnt;
> -	lpfc_template.sg_tablesize = phba->cfg_sg_seg_cnt;
> +	lpfc_template_s3.sg_tablesize = phba->cfg_sg_seg_cnt;
>   
>   	/* There are going to be 2 reserved BDEs: 1 FCP cmnd + 1 FCP rsp */
>   	if (phba->cfg_enable_bg) {


^ permalink raw reply	[flat|nested] 4+ messages in thread

* RE: [PATCH] lpfc: in sli3 use configured sg_seg_cnt for sg_tablesize
  2015-05-29 14:05 ` James Smart
@ 2015-05-29 14:12   ` Strösser, Bodo
  0 siblings, 0 replies; 4+ messages in thread
From: Strösser, Bodo @ 2015-05-29 14:12 UTC (permalink / raw)
  To: James Smart, linux-scsi@vger.kernel.org

Yes, we normally use 128, as this is the value best suited
for our RAID systems. After upgrading the software we saw
a clear performance reduction that was caused by the bug.

With the fix everything works fine again.

Thank you,
Bodo

> -----Original Message-----
> From: James Smart [mailto:james.smart@avagotech.com]
> Sent: Friday, May 29, 2015 4:05 PM
> To: Strösser, Bodo; linux-scsi@vger.kernel.org
> Subject: Re: [PATCH] lpfc: in sli3 use configured sg_seg_cnt for sg_tablesize
> 
> Bodo,
> 
> This is a valid fix.  Thank you.
> 
> I assume you were changing the driver module parameter to up the SG
> count ?  without the fix we would have been capped at 64 sges.
> 
> -- james
> 
> Reviewed-By: James Smart <james.smart@avagotech.com>
> 
> 
> 
> On 5/29/2015 8:22 AM, bstroesser@ts.fujitsu.com wrote:
> > Hi James,
> >
> > We had some performance problems with RAID systems connected to LPe12k.
> > AFAICS, the reason is a small bug in lpfc.ko, causing the IO-size to
> > be smaller than expected.
> >
> > The patch below fixes it for us.
> >
> > Please CC me, I'm not on the list.
> >
> > Best regards
> > Bodo
> >
> >
> > ------------------------------------------------------
> >
> > From: Bodo Stroesser <bstroesser@ts.fujitsu.com>
> > Date: Fri, 29 May 2015 13:34:19 +0200
> > Subject: [PATCH] lpfc: in sli3 use configured sg_seg_cnt for sg_tablesize
> >
> > Currently the module parameter lpfc_sg_seg_count does not have effect
> > for sli3 devices.
> >
> > In lpfc_sli_driver_resource_setup(), which is used for sli3, the code
> > writes the configured sg_seg_cnt into lpfc_template.sg_tablesize.
> > But lpfc_template is the template used for sli4 only. Thus the value should
> > correctly be written to lpfc_template_s3->sg_tablesize.
> >
> > This patch is for kernel 4.1-rc5, but is tested with lpfc 10.2.405.26 only.
> >
> > Signed-off-by: Bodo Stroesser <bstroesser@ts.fujitsu.com>
> > ---
> >
> > --- a/drivers/scsi/lpfc/lpfc_init.c	2015-05-29 10:19:02.000000000 +0200
> > +++ b/drivers/scsi/lpfc/lpfc_init.c	2015-05-29 10:19:56.000000000 +0200
> > @@ -4988,7 +4988,7 @@ lpfc_sli_driver_resource_setup(struct lp
> >
> >   	/* Initialize the host templates the configured values. */
> >   	lpfc_vport_template.sg_tablesize = phba->cfg_sg_seg_cnt;
> > -	lpfc_template.sg_tablesize = phba->cfg_sg_seg_cnt;
> > +	lpfc_template_s3.sg_tablesize = phba->cfg_sg_seg_cnt;
> >
> >   	/* There are going to be 2 reserved BDEs: 1 FCP cmnd + 1 FCP rsp */
> >   	if (phba->cfg_enable_bg) {

--
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [PATCH] lpfc: in sli3 use configured sg_seg_cnt for sg_tablesize
  2015-05-29 12:22 [PATCH] lpfc: in sli3 use configured sg_seg_cnt for sg_tablesize bstroesser
@ 2015-06-02 21:09 ` Sebastian Herbszt
  0 siblings, 0 replies; 4+ messages in thread
From: Sebastian Herbszt @ 2015-06-02 21:09 UTC (permalink / raw)
  To: bstroesser; +Cc: james.smart, linux-scsi, Sebastian Herbszt

bstroesser@ts.fujitsu.com wrote:
> Hi James,
> 
> We had some performance problems with RAID systems connected to LPe12k.
> AFAICS, the reason is a small bug in lpfc.ko, causing the IO-size to
> be smaller than expected.
> 
> The patch below fixes it for us.
> 
> Please CC me, I'm not on the list.
> 
> Best regards
> Bodo
> 
> 
> ------------------------------------------------------
> 
> From: Bodo Stroesser <bstroesser@ts.fujitsu.com>
> Date: Fri, 29 May 2015 13:34:19 +0200
> Subject: [PATCH] lpfc: in sli3 use configured sg_seg_cnt for sg_tablesize
> 
> Currently the module parameter lpfc_sg_seg_count does not have effect
> for sli3 devices.
> 
> In lpfc_sli_driver_resource_setup(), which is used for sli3, the code
> writes the configured sg_seg_cnt into lpfc_template.sg_tablesize.
> But lpfc_template is the template used for sli4 only. Thus the value should
> correctly be written to lpfc_template_s3->sg_tablesize.
> 
> This patch is for kernel 4.1-rc5, but is tested with lpfc 10.2.405.26 only.
> 
> Signed-off-by: Bodo Stroesser <bstroesser@ts.fujitsu.com>
> ---
> 
> --- a/drivers/scsi/lpfc/lpfc_init.c	2015-05-29 10:19:02.000000000 +0200
> +++ b/drivers/scsi/lpfc/lpfc_init.c	2015-05-29 10:19:56.000000000 +0200
> @@ -4988,7 +4988,7 @@ lpfc_sli_driver_resource_setup(struct lp
>  
>  	/* Initialize the host templates the configured values. */
>  	lpfc_vport_template.sg_tablesize = phba->cfg_sg_seg_cnt;
> -	lpfc_template.sg_tablesize = phba->cfg_sg_seg_cnt;
> +	lpfc_template_s3.sg_tablesize = phba->cfg_sg_seg_cnt;
>  
>  	/* There are going to be 2 reserved BDEs: 1 FCP cmnd + 1 FCP rsp */
>  	if (phba->cfg_enable_bg) {

Reviewed-by: Sebastian Herbszt <herbszt@gmx.de>

Sebastian

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2015-06-02 21:09 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-05-29 12:22 [PATCH] lpfc: in sli3 use configured sg_seg_cnt for sg_tablesize bstroesser
2015-06-02 21:09 ` Sebastian Herbszt
     [not found] <10f4d2$5t7km8@dgate20u.abg.fsc.net>
2015-05-29 14:05 ` James Smart
2015-05-29 14:12   ` Strösser, Bodo

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).