Whamcloud - gitweb
LU-12222 lnet: Primary NID of lolnd NID is the lolnd NID 13/38313/3
authorChris Horn <hornc@cray.com>
Wed, 22 Apr 2020 16:42:27 +0000 (11:42 -0500)
committerOleg Drokin <green@whamcloud.com>
Thu, 7 May 2020 05:42:59 +0000 (05:42 +0000)
We want Lustre traffic that is intended for the local peer to be sent
and received over the lolnd. The function ptlrpc_uuid_to_peer() will
currently resolve a NID to the lolnd NID, but ptlrpc_connection_get()
will overwrite this selection with the result from LNetPrimaryNID().

Have LNetPrimaryNID return the lolnd NID when it is passed the lolnd

HPE-bug-id: LUS-8457
Signed-off-by: Chris Horn <hornc@cray.com>
Change-Id: I02708bb45f8440091782ca7886bac7656efb0223
Reviewed-on: https://review.whamcloud.com/38313
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Serguei Smirnov <ssmirnov@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>

index 8b32c2a..210a96b 100644 (file)
@@ -1180,6 +1180,9 @@ LNetPrimaryNID(lnet_nid_t nid)
        int rc = 0;
        int cpt;
+       if (nid == LNET_NID_LO_0)
+               return LNET_NID_LO_0;
        cpt = lnet_net_lock_current();
        lpni = lnet_nid2peerni_locked(nid, LNET_NID_ANY, cpt);
        if (IS_ERR(lpni)) {