sunrpc: Add a function to close temporary transports immediately
authorScott Mayhew <smayhew@redhat.com>
Fri, 11 Dec 2015 21:45:58 +0000 (16:45 -0500)
committerJ. Bruce Fields <bfields@redhat.com>
Wed, 23 Dec 2015 15:08:15 +0000 (10:08 -0500)
commitc3d4879e01bec484f50a78c108341f039d470e96
tree5c879cdf84dc41569ec890574e5f07476c892705
parentd4f72cb7fa4a3705f6675f2740f9713dc3400dd3
sunrpc: Add a function to close temporary transports immediately

Add a function svc_age_temp_xprts_now() to close temporary transports
whose xpt_local matches the address passed in server_addr immediately
instead of waiting for them to be closed by the timer function.

The function is intended to be used by notifier_blocks that will be
added to nfsd and lockd that will run when an ip address is deleted.

This will eliminate the ACK storms and client hangs that occur in
HA-NFS configurations where nfsd & lockd is left running on the cluster
nodes all the time and the NFS 'service' is migrated back and forth
within a short timeframe.

Signed-off-by: Scott Mayhew <smayhew@redhat.com>
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
include/linux/sunrpc/svc_xprt.h
net/sunrpc/svc_xprt.c