[Open-FCoE] [PATCH v2] libfc, fcoe, fnic: Separate rport and lport max retry counts

Abhijeet Arvind Joglekar (abjoglek) abjoglek at cisco.com
Thu Apr 16 20:00:32 UTC 2009


> -----Original Message-----
> From: Robert Love [mailto:robert.w.love at intel.com] 
> Sent: Thursday, April 16, 2009 12:44 PM
> To: Abhijeet Arvind Joglekar (abjoglek)
> Cc: devel at open-fcoe.org
> Subject: Re: [Open-FCoE] [PATCH v2] libfc, fcoe, fnic: 
> Separate rport and lport max retry counts
> 
> On Thu, 2009-04-16 at 12:40 -0700, Robert Love wrote:
> > From: Abhijeet Joglekar <abjoglek at cisco.com>
> > 
> > This allows number of retries to be configured separately for lport 
> > and rport. This is preparation for fnic which will allow 
> independent 
> > configuration of lport and rport retries.
> > 
> This is just an update to the patch. I'm confused what you 
> want me to do with this patch- push it for 30-rc or 31 merge?

> I didn't OK the patch as a fix before since it's not a fix. I 
> suggested that it should go with fnic since this is to 
> support a fnic feature.

I will submit fnic for 30-merge tomorrow. However, fnic won't have this
separate rport retry counter, since the libFC patch to enable it (which
is this patch) is not in scsi-misc yet.

Once fnic goes in scsi-misc, and gets pulled into fcoe-features and
fcoe-fixes through scsi-misc, we could push this patch out for 31 merge
or 30-rc (if James is ok with it).

 
> > Signed-off-by: Abhijeet Joglekar <abjoglek at cisco.com>
> > Signed-off-by: Robert Love <robert.w.love at intel.com>
> > ---
> > 
> >  drivers/scsi/fcoe/fcoe.c      |    1 +
> >  drivers/scsi/libfc/fc_rport.c |    2 +-
> >  include/scsi/libfc.h          |    1 +
> >  3 files changed, 3 insertions(+), 1 deletions(-)
> > 
> > diff --git a/drivers/scsi/fcoe/fcoe.c 
> b/drivers/scsi/fcoe/fcoe.c index 
> > 94e1e31..00b6693 100644
> > --- a/drivers/scsi/fcoe/fcoe.c
> > +++ b/drivers/scsi/fcoe/fcoe.c
> > @@ -147,6 +147,7 @@ static int fcoe_lport_config(struct 
> fc_lport *lp)
> >  	lp->link_up = 0;
> >  	lp->qfull = 0;
> >  	lp->max_retry_count = 3;
> > +	lp->max_rport_retry_count = 3;
> >  	lp->e_d_tov = 2 * 1000;	/* FC-FS default */
> >  	lp->r_a_tov = 2 * 2 * 1000;
> >  	lp->service_params = (FCP_SPPF_INIT_FCN | 
> FCP_SPPF_RD_XRDY_DIS | 
> > diff --git a/drivers/scsi/libfc/fc_rport.c 
> > b/drivers/scsi/libfc/fc_rport.c index e675f5a..ef603ec 100644
> > --- a/drivers/scsi/libfc/fc_rport.c
> > +++ b/drivers/scsi/libfc/fc_rport.c
> > @@ -478,7 +478,7 @@ static void fc_rport_error_retry(struct 
> fc_rport *rport, struct fc_frame *fp)
> >  	if (PTR_ERR(fp) == -FC_EX_CLOSED)
> >  		return fc_rport_error(rport, fp);
> >  
> > -	if (rdata->retries < rdata->local_port->max_retry_count) {
> > +	if (rdata->retries < rdata->local_port->max_rport_retry_count) {
> >  		FC_DEBUG_RPORT("Error %ld in state %s, retrying\n",
> >  			       PTR_ERR(fp), fc_rport_state(rport));
> >  		rdata->retries++;
> > diff --git a/include/scsi/libfc.h b/include/scsi/libfc.h index 
> > 45f9cc6..77db833 100644
> > --- a/include/scsi/libfc.h
> > +++ b/include/scsi/libfc.h
> > @@ -679,6 +679,7 @@ struct fc_lport {
> >  	unsigned int		e_d_tov;
> >  	unsigned int		r_a_tov;
> >  	u8			max_retry_count;
> > +	u8                      max_rport_retry_count;
> >  	u16			link_speed;
> >  	u16			link_supported_speeds;
> >  	u16			lro_xid;	/* max xid for 
> fcoe lro */
> > 
> > _______________________________________________
> > devel mailing list
> > devel at open-fcoe.org
> > http://www.open-fcoe.org/mailman/listinfo/devel
> 
> 



More information about the devel mailing list