lpfc: Fix vport deletion failure.
authorJames Smart <james.smart@avagotech.com>
Fri, 22 May 2015 14:42:36 +0000 (10:42 -0400)
committerJames Bottomley <JBottomley@Odin.com>
Sat, 13 Jun 2015 15:19:25 +0000 (08:19 -0700)
If a vport was deleted while in the middle of discovery, we weren't
clearing the nport discovery flag. Correct by clearing the flag and
cancelling our discovery timeout timer.

Signed-off-by: Dick Kennedy <dick.kennedy@avagotech.com>
Signed-off-by: James Smart <james.smart@avagotech.com>
Reviewed-by: Hannes Reinecke <hare@suse.de>
Signed-off-by: James Bottomley <JBottomley@Odin.com>
drivers/scsi/lpfc/lpfc_els.c

index 3aad09f7bc5c22e9ada9d195ed54c4d3052b7a3b..30021f3f956f20745510529a09dc6f9a70a4ab80 100644 (file)
@@ -8410,8 +8410,10 @@ lpfc_cmpl_els_npiv_logo(struct lpfc_hba *phba, struct lpfc_iocbq *cmdiocb,
 
        if (irsp->ulpStatus == IOSTAT_SUCCESS) {
                spin_lock_irq(shost->host_lock);
+               vport->fc_flag &= ~FC_NDISC_ACTIVE;
                vport->fc_flag &= ~FC_FABRIC;
                spin_unlock_irq(shost->host_lock);
+               lpfc_can_disctmo(vport);
        }
 }