Whamcloud - gitweb
LU-14536 o2iblnd: don't resend if there's no listener
[fs/lustre-release.git] / lnet / klnds / o2iblnd / o2iblnd_cb.c
index e22f946..de5e782 100644 (file)
@@ -2845,6 +2845,7 @@ static void
 kiblnd_rejected(struct kib_conn *conn, int reason, void *priv, int priv_nob)
 {
        struct kib_peer_ni *peer_ni = conn->ibc_peer;
+       int status = -ECONNREFUSED;
 
        LASSERT (!in_interrupt());
        LASSERT (conn->ibc_state == IBLND_CONN_ACTIVE_CONNECT);
@@ -2856,6 +2857,7 @@ kiblnd_rejected(struct kib_conn *conn, int reason, void *priv, int priv_nob)
                break;
 
        case IB_CM_REJ_INVALID_SERVICE_ID:
+               status = -EHOSTUNREACH;
                peer_ni->ibp_retries++;
                kiblnd_check_reconnect(conn, IBLND_MSG_VERSION, 0,
                                       IBLND_REJECT_INVALID_SRV_ID, NULL);
@@ -2969,7 +2971,7 @@ kiblnd_rejected(struct kib_conn *conn, int reason, void *priv, int priv_nob)
                break;
        }
 
-       kiblnd_connreq_done(conn, -ECONNREFUSED);
+       kiblnd_connreq_done(conn, status);
 }
 
 static void