Whamcloud - gitweb
LU-7734 lnet: automatic sizing of router pinger buffers 24/22024/7
authorOlaf Weber <olaf@sgi.com>
Fri, 27 Jan 2017 15:16:34 +0000 (16:16 +0100)
committerOlaf Weber <olaf@sgi.com>
Fri, 27 Jan 2017 15:41:18 +0000 (16:41 +0100)
commit70112f98305183821d55f054fcd64d7c6a142507
tree1cc944dc2d0b22ccf9cb85f07eb49938f7979ef0
parentcd2d11be560f970f5d5a00f34d14bd81f1b6ab6f
LU-7734 lnet: automatic sizing of router pinger buffers

The router pinger uses fixed-size buffers to receive the data
returned by a ping. When a router has more than 16 interfaces
(including loopback) this means the data for some interfaces
is dropped.

Detect this situation, and track the number of remote NIs in
the lnet_rc_data_t structure.  lnet_create_rc_data_locked()
becomes lnet_update_rc_data_locked(), and modified to replace
an existing ping buffer if one is present. It is now also
called by lnet_ping_router_locked() when the existing ping
buffer is too small.

Test-Parameters: trivial
Signed-off-by: Olaf Weber <olaf@sgi.com>
Change-Id: I9474e2e162d2facdf571fe207dea254dd3f8e469
lnet/include/lnet/lib-types.h
lnet/lnet/router.c