Whamcloud - gitweb
LU-12339 lnet: select LO interface for sending 57/34957/5
authorAmir Shehata <ashehata@whamcloud.com>
Sat, 25 May 2019 16:55:47 +0000 (09:55 -0700)
committerAmir Shehata <ashehata@whamcloud.com>
Fri, 7 Jun 2019 18:10:30 +0000 (18:10 +0000)
commit69d1535ebdac139c6b19db2bca5f65663fe88467
treedddd23470331a2a03d83bb65bd61db5cf719535b
parentfc6b321036f34c00d5b32b49c817dc0034fbad9e
LU-12339 lnet: select LO interface for sending

In the following scenario

Lustre->LNetPrimaryNID with 0@lo
Discover is initiated on 0@lo
The peer is created with 0@lo and <addr>@<net>
The interface health of the peer's <addr>@<net> is decremented
LNetPut() to self
selection algorithm selects 0@lo to send to

This exposes an issue where we try and go through the peer credit
management algorithm, but because there are no credits associated with
0@lo we end up indefinitely queuing the message. ptlrpc will then get
stuck waiting for send completion on the message.

This was exposed via conf-sanity 32a

Signed-off-by: Amir Shehata <ashehata@whamcloud.com>
Change-Id: I98e9d3428b594a0d041d27d8e8d8de7596825edc
Reviewed-on: https://review.whamcloud.com/34957
Reviewed-by: Olaf Weber <olaf.weber@hpe.com>
Reviewed-by: Chris Horn <hornc@cray.com>
Tested-by: Jenkins
lnet/lnet/lib-move.c