Re: [PATCH v2] scsi: libfc: Avoid invoking response handler twice if ep is already completed.

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 15 Dec 2020 11:47:31 -0800, Javed Hasan wrote:

>   Issue :- race condition getting hit between the response handler
>   get called because of the exchange_mgr_reset() which clear out all
>   the active XID and the response we get via interrupt as the same time
> 
>   Below are the sequence of events occurring in case of
>   "issue/race condition" :-
>   rport ba0200: Port timeout, state PLOGI
>   rport ba0200: Port entered PLOGI state from PLOGI state
>   xid 1052: Exchange timer armed : 20000 msecs      xid timer armed here
>   rport ba0200: Received LOGO request while in state PLOGI
>   rport ba0200: Delete port
>   rport ba0200: work event 3
>   rport ba0200: lld callback ev 3
>   bnx2fc: rport_event_hdlr: event = 3, port_id = 0xba0200
>   bnx2fc: ba0200 - rport not created Yet!!
>   /* Here we reset any outstanding exchanges before
>    freeing rport using the exch_mgr_reset() */
>   xid 1052: Exchange timer canceled
>   /*Here we got two response for one xid*/
>   xid 1052: invoking resp(), esb 20000000 state 3
>   xid 1052: invoking resp(), esb 20000000 state 3
>   xid 1052: fc_rport_plogi_resp() : ep->resp_active 2
>   xid 1052: fc_rport_plogi_resp() : ep->resp_active 2

Applied to 5.11/scsi-fixes, thanks!

[1/1] scsi: libfc: Avoid invoking response handler twice if ep is already completed.
      https://git.kernel.org/mkp/scsi/c/b2b0f16fa65e

-- 
Martin K. Petersen	Oracle Linux Engineering



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux