From 6a9bdf59e6306d49c4d2d44e95773a257114c639 Mon Sep 17 00:00:00 2001 From: Mr NeilBrown Date: Mon, 6 Jul 2020 11:47:56 +1000 Subject: [PATCH] LU-10391 lnet: alter lnd_notify_peer_down() to take lnet_nid The lnd_notify_peer_down() interface now takes a large nid. Test-Parameters: trivial Test-Parameters: serverversion=2.12 serverdistro=el7.9 testlist=runtests Test-Parameters: clientversion=2.12 testlist=runtests Signed-off-by: Mr NeilBrown Change-Id: I9926caf0508ff257e9e64d5537597addbce657d7 Reviewed-on: https://review.whamcloud.com/43608 Reviewed-by: James Simmons Reviewed-by: Serguei Smirnov Tested-by: jenkins Tested-by: Maloo Reviewed-by: Oleg Drokin --- lnet/include/lnet/lib-types.h | 2 +- lnet/klnds/socklnd/socklnd.c | 9 +++++---- lnet/lnet/router.c | 4 ++-- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/lnet/include/lnet/lib-types.h b/lnet/include/lnet/lib-types.h index 8f53d63..0df6857 100644 --- a/lnet/include/lnet/lib-types.h +++ b/lnet/include/lnet/lib-types.h @@ -327,7 +327,7 @@ struct lnet_lnd { struct lnet_msg *msg, void **new_privatep); /* notification of peer down */ - void (*lnd_notify_peer_down)(lnet_nid_t peer); + void (*lnd_notify_peer_down)(struct lnet_nid *peer); /* accept a new connection */ int (*lnd_accept)(struct lnet_ni *ni, struct socket *sock); diff --git a/lnet/klnds/socklnd/socklnd.c b/lnet/klnds/socklnd/socklnd.c index c2b0a96..011c1bb 100644 --- a/lnet/klnds/socklnd/socklnd.c +++ b/lnet/klnds/socklnd/socklnd.c @@ -1652,24 +1652,25 @@ ksocknal_close_matching_conns(struct lnet_processid *id, __u32 ipaddr) } void -ksocknal_notify_gw_down(lnet_nid_t gw_nid) +ksocknal_notify_gw_down(struct lnet_nid *gw_nid) { /* The router is telling me she's been notified of a change in * gateway state.... */ struct lnet_processid id = { .pid = LNET_PID_ANY, + .nid = *gw_nid, }; - CDEBUG(D_NET, "gw %s down\n", libcfs_nid2str(gw_nid)); + CDEBUG(D_NET, "gw %s down\n", libcfs_nidstr(gw_nid)); - lnet_nid4_to_nid(gw_nid, &id.nid); /* If the gateway crashed, close all open connections... */ ksocknal_close_matching_conns(&id, 0); return; /* We can only establish new connections - * if we have autroutes, and these connect on demand. */ + * if we have autroutes, and these connect on demand. + */ } static void diff --git a/lnet/lnet/router.c b/lnet/lnet/router.c index 5929b41..52a5502 100644 --- a/lnet/lnet/router.c +++ b/lnet/lnet/router.c @@ -1703,7 +1703,7 @@ lnet_rtrpools_disable(void) } static inline void -lnet_notify_peer_down(struct lnet_ni *ni, lnet_nid_t nid) +lnet_notify_peer_down(struct lnet_ni *ni, struct lnet_nid *nid) { if (ni->ni_net->net_lnd->lnd_notify_peer_down != NULL) (ni->ni_net->net_lnd->lnd_notify_peer_down)(nid); @@ -1817,7 +1817,7 @@ lnet_notify(struct lnet_ni *ni, lnet_nid_t nid, bool alive, bool reset, lnet_net_unlock(0); if (ni != NULL && !alive) - lnet_notify_peer_down(ni, lnet_nid_to_nid4(&lpni->lpni_nid)); + lnet_notify_peer_down(ni, &lpni->lpni_nid); cpt = lpni->lpni_cpt; lnet_net_lock(cpt); -- 1.8.3.1