Fix for reset which happens right after sending a terminate message.
Terminate timer is not deleted when the connection is closed.
Signed-off-by: Tatyana Nikolova <Tatyana.E.Nikolova@intel.com>
Signed-off-by: Faisal Latif <Faisal.Latif@intel.com>
Signed-off-by: Roland Dreier <roland@purestorage.com>
                issue_disconn = 1;
                issue_close = 1;
                nesqp->cm_id = NULL;
+               del_timer(&nesqp->terminate_timer);
                if (nesqp->flush_issued == 0) {
                        nesqp->flush_issued = 1;
                        issue_flush = 1;
 
                        }
                        break;
                case NES_AEQE_AEID_LLP_CLOSE_COMPLETE:
-                       if (nesqp->term_flags) {
-                               nes_terminate_done(nesqp, 0);
-                               return;
-                       }
                        spin_lock_irqsave(&nesqp->lock, flags);
                        nesqp->hw_iwarp_state = iwarp_state;
                        nesqp->hw_tcp_state = tcp_state;