If a login failed due to low FW resources, the session can stall and will
not be connected. Reset session state to allow relogin logic to redrive
the connection.
Signed-off-by: Quinn Tran <qutran@marvell.com>
Signed-off-by: Nilesh Javali <njavali@marvell.com>
Reviewed-by: Himanshu Madhani <himanshu.madhani@oracle.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
        fcport->flags &= ~FCF_ASYNC_SENT;
 done:
        fcport->flags &= ~FCF_ASYNC_ACTIVE;
+
+       /*
+        * async login failed. Could be due to iocb/exchange resource
+        * being low. Set state DELETED for re-login process to start again.
+        */
+       qla2x00_set_fcport_disc_state(fcport, DSC_DELETED);
        return rval;
 }