• Joe Eykholt's avatar
    [SCSI] libfc: re-login to remote ports that send us LOGO · feab4ae7
    Joe Eykholt authored
    After a quick link flap, a target was seen to send us a LOGO.
    Apparently, it saw an RSCN reporting that we had dropped out of the
    fabric after we had logged back into it.
    
    This is likely in larger fabrics (more than 2 FC switches) after
    a quick link flap at the initiator.  Each link transition causes
    an port-specific RSCN to the target.  After the link comes back up,
    the initiator successfully discovers and does a PLOGI to the target
    before the target sees the first RSCN reporting the initiator is gone,
    and it sends a LOGO.  The target may see a subsequent RSCN saying the
    port is back, but probably wouldn't send a PLOGI and leaves it
    up to the initiator to re-login.
    
    An RSCN can be delayed by the switches due to software layers but a
    PLOGI is forwarded in hardware causing the PLOGI to beat the RSCN.
    
    If a remote port is in the discovered set and sends a LOGO, re-login to it.
    Signed-off-by: default avatarJoe Eykholt <jeykholt@cisco.com>
    Signed-off-by: default avatarRobert Love <robert.w.love@intel.com>
    Signed-off-by: default avatarJames Bottomley <James.Bottomley@suse.de>
    feab4ae7
fc_rport.c 36.8 KB