sm-notify: Avoid extra rpcbind queries
authorChuck Lever <chuck.lever@oracle.com>
Mon, 19 Sep 2011 18:20:25 +0000 (14:20 -0400)
committerSteve Dickson <steved@redhat.com>
Tue, 20 Sep 2011 11:33:03 +0000 (07:33 -0400)
commit445082926141a116c9e93f9ccdd81039c5a2841b
treed78b3a5249310aaea8ab2322ca5915c884fb9d24
parenta96f3700e4c0bb1b0ea92530cc4a48b8577eeb8f
sm-notify: Avoid extra rpcbind queries

The logic in notify_host() watches the host->retries counter to see if
progress is not being made.  If progress stalls, notify_host() tries
another IP address.  This means sm-notify will generate a fresh
rpcbind query.

After an RPC succeeds, be sure to reset host->retries so sm-notify
doesn't start walking down the host's addrinfo list when we _are_
making progress.  In the common case, if the host responds, we avoid
extra rpcbind queries and send all requests for the host to the same
IP address.

Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: Steve Dickson <steved@redhat.com>
utils/statd/sm-notify.c