Whamcloud - gitweb
LU-14945 lnet: don't use hops to determine the route state
authorSerguei Smirnov <ssmirnov@whamcloud.com>
Mon, 16 Aug 2021 23:37:30 +0000 (16:37 -0700)
committerAndreas Dilger <adilger@whamcloud.com>
Fri, 9 Sep 2022 01:38:11 +0000 (01:38 +0000)
commit21ff11930176b5aced79c8d41596813d43f9b5de
tree26c3fe28e73db6d112b8417284c73a979ddda4a0
parent2d0bb53ffeb6433b2b9a4de72eb93a5ab3c3dc7a
LU-14945 lnet: don't use hops to determine the route state

NodeA <-tcp1-> GW1 <-tcp2-> GW2 <-tcp3-> NodeB

Assuming GW1 knows how to reach tcp3 network and GW2 knows
how to reach tcp1 network, it should be possible to add routes
without specifying hop=2 on nodes A and B to reach tcp3 and tcp1
respectively and then be able to lnetctl ping between them.
Changes introduced by LU-13785 interpret default hops to be
equivalent to hop=1 set explicitly for the purpose of determining
route aliveness, which results in the routes created as described
above to be considered "down".

Fix it so that default hop setting doesn't prevent
the multi-hop scenario from working.

Lustre-change: https://review.whamcloud.com/44674
Lustre-commit: 3f2844dc9333c86452c37bd7b4519729b1351371

Test-Parameters: trivial
Fixes: 2e07619477 ("LU-13785 lnet: Use lr_hops for avoid_asym_router_failure")
Signed-off-by: Serguei Smirnov <ssmirnov@whamcloud.com>
Change-Id: I341ccdfe156434b0cb306359acc91a9193b44f7b
Reviewed-on: https://review.whamcloud.com/48337
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Frank Sehr <fsehr@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
lnet/lnet/router.c