[Open-FCoE] [PATCH 3/3] libfc: removed FC_TYPE_FCP check in fc_exch_reset

Dev, Vasu vasu.dev at intel.com
Wed Sep 17 17:47:43 UTC 2008

>-----Original Message-----
>From: Mike Christie [mailto:michaelc at cs.wisc.edu]
>Sent: Wednesday, September 17, 2008 10:24 AM
>To: Dev, Vasu
>Cc: devel at open-fcoe.org
>Subject: Re: [Open-FCoE] [PATCH 3/3] libfc: removed FC_TYPE_FCP check
>Vasu Dev wrote:
>> This check was preventing exch free. If fsp is aborted and BA_ACC
>> has been received, then FCP has already called exch_done while
>> also resetting seq_ptr in fsp. However exch_done from FCP will
>> not drop exch ref for exch in mp due to still pending RRQ.
>> At this point if fc_exch_reset occurs then exch will not get
>> freed due to pending exch ref for exch in mp. The fc_exch_reset
>> will clear the ESB_ST_REC_QUAL but will not call exch done again
>> due FC_TYPE_FCP check and ep->resp would be null in this case
>> since FCP has already called exch done.
>> So this patch made exch done unconditional in fc_exch_reset().
>Patch looks good.

Thanks for quickly reviewing all these recent 3 patches, appreciated.
Your recent changes allowing multiple times exch done calling made
possible to call exch done unconditionally here again.

More information about the devel mailing list