Whamcloud - gitweb
LU-17021 socklnd: fix late ksnr_max_conns set 90/51890/4
authorCyril Bordage <cbordage@whamcloud.com>
Tue, 8 Aug 2023 13:06:23 +0000 (15:06 +0200)
committerOleg Drokin <green@whamcloud.com>
Sat, 19 Aug 2023 05:39:17 +0000 (05:39 +0000)
ksnr_max_conns was set to the correct value after it was used.

Test-Parameters: trivial
Fixes: a5cbe7883db6 ("LU-12815 socklnd: allow dynamic setting of conns_per_peer")
Signed-off-by: Cyril Bordage <cbordage@whamcloud.com>
Change-Id: I9f2454d915ee1ab27db96f5247028db94965a11f
Reviewed-on: https://review.whamcloud.com/c/fs/lustre-release/+/51890
Reviewed-by: Chris Horn <chris.horn@hpe.com>
Reviewed-by: Serguei Smirnov <ssmirnov@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
lnet/klnds/socklnd/socklnd.c

index d8e1e84..019b264 100644 (file)
@@ -619,13 +619,13 @@ ksocknal_add_peer(struct lnet_ni *ni, struct lnet_processid *id,
        if (peer_ni->ksnp_conn_cb) {
                ksocknal_conn_cb_decref(conn_cb);
        } else {
-               ksocknal_add_conn_cb_locked(peer_ni, conn_cb);
                /* Remember conns_per_peer setting at the time
                 * of connection initiation. It will define the
                 * max number of conns per type for this conn_cb
                 * while it's in use.
                 */
                conn_cb->ksnr_max_conns = ksocknal_get_conns_per_peer(peer_ni);
+               ksocknal_add_conn_cb_locked(peer_ni, conn_cb);
        }
 
        write_unlock_bh(&ksocknal_data.ksnd_global_lock);