Whamcloud - gitweb
LU-13472 lnet: set route aliveness properly 23/38323/6
authorAmir Shehata <ashehata@whamcloud.com>
Thu, 23 Apr 2020 00:54:34 +0000 (17:54 -0700)
committerOleg Drokin <green@whamcloud.com>
Wed, 27 May 2020 05:05:03 +0000 (05:05 +0000)
In the case when the discover is toggled from on to off, the route
aliveness might become stale due to not updating the route->lr_alive
variable correctly. It will get updated once the gateway is pinged.
However, there is a period of max alive_router_check_interval where
the route can be down.

Test-Parameters: trivial testlist=sanity-lnet
Signed-off-by: Amir Shehata <ashehata@whamcloud.com>
Change-Id: Ic1754d6e7ddc9398efc7a64f823a70e5546e9ca6
Reviewed-on: https://review.whamcloud.com/38323
Tested-by: jenkins <devops@whamcloud.com>
Reviewed-by: Chris Horn <chris.horn@hpe.com>
Reviewed-by: Serguei Smirnov <ssmirnov@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lnet/lnet/router.c

index 3e90c30..3fb67db 100644 (file)
@@ -526,8 +526,10 @@ lnet_router_discovery_complete(struct lnet_peer *lp)
                * the gateway we assume this is intentional and we mark the
                * gateway as multi-hop
                */
-               list_for_each_entry(route, &lp->lp_routes, lr_gwlist)
+               list_for_each_entry(route, &lp->lp_routes, lr_gwlist) {
+                       lnet_set_route_aliveness(route, true);
                        lnet_set_route_hop_type(lp, route);
+               }
 
                return;
        }