From: Lai Siyao Date: Mon, 5 Dec 2011 07:28:39 +0000 (+0800) Subject: LU-630 lnet: only router checks peer health X-Git-Tag: 2.1.2-RC1~21 X-Git-Url: https://git.whamcloud.com/?a=commitdiff_plain;h=d4f36787d67c02e2ce7b21a891ff71bc709b3cb5;p=fs%2Flustre-release.git LU-630 lnet: only router checks peer health The peer health code is designed for router, so a ~rtr node always assumes peers to be alive. Signed-off-by: Lai Siyao Signed-off-by: Bob Glossman Change-Id: Ib794feace322112988a5b727ed40fb38f8f57370 Reviewed-on: http://review.whamcloud.com/2646 Tested-by: Hudson Tested-by: Maloo Reviewed-by: Oleg Drokin --- diff --git a/lnet/lnet/lib-move.c b/lnet/lnet/lib-move.c index 932591c..2df5aa2 100644 --- a/lnet/lnet/lib-move.c +++ b/lnet/lnet/lib-move.c @@ -923,6 +923,7 @@ lnet_ni_peer_alive(lnet_peer_t *lp) LASSERT (lnet_peer_aliveness_enabled(lp)); LASSERT (ni->ni_lnd->lnd_query != NULL); + LASSERT (the_lnet.ln_routing == 1); LNET_UNLOCK(); (ni->ni_lnd->lnd_query)(ni, lp->lp_nid, &last_alive); @@ -932,7 +933,6 @@ lnet_ni_peer_alive(lnet_peer_t *lp) if (last_alive != 0) /* NI has updated timestamp */ lp->lp_last_alive = last_alive; - return; } /* NB: always called with LNET_LOCK held */ @@ -943,6 +943,7 @@ lnet_peer_is_alive (lnet_peer_t *lp, cfs_time_t now) cfs_time_t deadline; LASSERT (lnet_peer_aliveness_enabled(lp)); + LASSERT (the_lnet.ln_routing == 1); /* Trust lnet_notify() if it has more recent aliveness news, but * ignore the initial assumed death (see lnet_peers_start_down()). @@ -974,6 +975,10 @@ lnet_peer_alive_locked (lnet_peer_t *lp) { cfs_time_t now = cfs_time_current(); + /* LU-630: only router checks peer health. */ + if (the_lnet.ln_routing == 0) + return 1; + if (!lnet_peer_aliveness_enabled(lp)) return -ENODEV;