[LU-13779] Correct asymmetric route detection Created: 13/Jul/20  Updated: 24/Aug/22  Resolved: 11/Mar/21

Status: Resolved
Project: Lustre
Component/s: None
Affects Version/s: None
Fix Version/s: Lustre 2.15.0

Type: Bug Priority: Minor
Reporter: Chris Horn Assignee: Chris Horn
Resolution: Fixed Votes: 0
Labels: None

Severity: 3
Rank (Obsolete): 9223372036854775807

 Description   

In lnet_parse():

        if (lnet_drop_asym_route && for_me &&
            LNET_NIDNET(src_nid) != LNET_NIDNET(from_nid)) {
                struct lnet_net *net;
                struct lnet_remotenet *rnet;
                bool found = true;
...
                rnet = lnet_find_rnet_locked(LNET_NIDNET(src_nid));
                if (rnet) {
...
                }
                lnet_net_unlock(cpt);
                if (!found) {
...
                        goto drop;

Failure to lookup the remote net for LNET_NIDNET(src_nid) indicates an asymmetric route, but we do not drop the message in this case.

another problem with this code: there's no guarantee that we'll have a route->lr_lnet that matches the net of ni->ni_nid.

It would be better to move this check to after we have looked up the lpni of from_nid. Then, we can look at just the routes associated with the gateway that owns the lpni. If one of those routes has lr_net == LNET_NIDNET(src_nid), then the route is symmetrical



 Comments   
Comment by Gerrit Updater [ 13/Jul/20 ]

Chris Horn (chris.horn@hpe.com) uploaded a new patch: https://review.whamcloud.com/39349
Subject: LU-13779 lnet: Correct asymmetric route detection
Project: fs/lustre-release
Branch: master
Current Patch Set: 1
Commit: af35e450ac7992a0674d42dfdf9e938fac709ef2

Comment by Gerrit Updater [ 10/Mar/21 ]

Oleg Drokin (green@whamcloud.com) merged in patch https://review.whamcloud.com/39349/
Subject: LU-13779 lnet: Correct asymmetric route detection
Project: fs/lustre-release
Branch: master
Current Patch Set:
Commit: 955080c3ae3f33c98e068f52a096761ea28624b7

Comment by Peter Jones [ 11/Mar/21 ]

Landed for 2.15

Generated at Sat Feb 10 03:04:08 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.