[Open-FCoE] [PATCH 1/3] libfc: removed completing FCP exch in abort response
michaelc at cs.wisc.edu
Wed Sep 17 17:10:19 UTC 2008
Vasu Dev wrote:
> The FC_TYPE_FCP check on abort response frame BA_RJT freed
> the fsp exch in fc_exch_abts_resp(). Instead we should
> be checking FC_TYPE_FCP against stored fh_type in fsp exch.
> The abort reject response was freeing fsp exch here
> while fsp would still use this fsp exch in scsi-ml eh-ing
> since currently FCP ignores all BA_RJT response leaving
> fsp unfinished for scsi-ml eh-ing.
> Signed-off-by: Vasu Dev <vasu.dev at intel.com>
> drivers/scsi/libfc/fc_exch.c | 2 +-
> 1 files changed, 1 insertions(+), 1 deletions(-)
> diff --git a/drivers/scsi/libfc/fc_exch.c b/drivers/scsi/libfc/fc_exch.c
> index 6b5a35b..8fa45aa 100644
> --- a/drivers/scsi/libfc/fc_exch.c
> +++ b/drivers/scsi/libfc/fc_exch.c
> @@ -1361,7 +1361,7 @@ static void fc_exch_abts_resp(struct fc_exch *ep, struct fc_frame *fp)
> * do we want to check END_SEQ as well as LAST_SEQ here?
> - if (fh->fh_type != FC_TYPE_FCP &&
> + if (ep->fh_type != FC_TYPE_FCP &&
> ntoh24(fh->fh_f_ctl) & FC_FC_LAST_SEQ)
> rc = fc_exch_done_locked(ep);
My fault. Bad cut and paste of the other check. Looks good. Thanks.
More information about the devel