Whamcloud - gitweb
LU-16106 lnet: allow direct messages regardless of peer NI status 55/48355/5
authorSerguei Smirnov <ssmirnov@whamcloud.com>
Sun, 28 Aug 2022 01:50:16 +0000 (18:50 -0700)
committerOleg Drokin <green@whamcloud.com>
Sat, 17 Sep 2022 06:23:49 +0000 (06:23 +0000)
If check_routers_before_use is enabled, the router needs to
be pinged before it is used, which is not possible because
its NIs are assumed to be down at start-up. Don't prevent
discovery of the router in this case.

This change allows non-routed traffic to peer NIs with "down"
status.

Test-Parameters: trivial
Signed-off-by: Serguei Smirnov <ssmirnov@whamcloud.com>
Change-Id: I36fa60e37ef4f47c82c69855c9b0b80bad8a36f4
Reviewed-on: https://review.whamcloud.com/48355
Reviewed-by: Frank Sehr <fsehr@whamcloud.com>
Reviewed-by: Chris Horn <chris.horn@hpe.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lnet/lnet/lib-move.c

index e23a532..da31094 100644 (file)
@@ -794,6 +794,10 @@ lnet_check_message_drop(struct lnet_ni *ni, struct lnet_peer_ni *lpni,
        if (lnet_msg_is_response(msg))
                return false;
 
        if (lnet_msg_is_response(msg))
                return false;
 
+       /* always send non-routed messages */
+       if (!msg->msg_routing)
+               return false;
+
        /* assume peer_ni is alive as long as we're within the configured
         * peer timeout
         */
        /* assume peer_ni is alive as long as we're within the configured
         * peer timeout
         */