path: root/net/sunrpc/netns.h
diff options
authorTrond Myklebust <Trond.Myklebust@netapp.com>2013-08-05 16:04:47 -0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2013-08-07 17:07:18 -0400
commit786615bc1ce84150ded80daea6bd9f6297f48e73 (patch)
treeb16f44afbdf83df990b762ae3c08b45b88b3e25e /net/sunrpc/netns.h
parent00326ed6442c66021cd4b5e19e80f3e2027d5d42 (diff)
SUNRPC: If the rpcbind channel is disconnected, fail the call to unregister
If rpcbind causes our connection to the AF_LOCAL socket to close after we've registered a service, then we want to be careful about reconnecting since the mount namespace may have changed. By simply refusing to reconnect the AF_LOCAL socket in the case of unregister, we avoid the need to somehow save the mount namespace. While this may lead to some services not unregistering properly, it should be safe. Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com> Cc: Nix <nix@esperi.org.uk> Cc: Jeff Layton <jlayton@redhat.com> Cc: stable@vger.kernel.org # 3.9.x
Diffstat (limited to 'net/sunrpc/netns.h')
1 files changed, 1 insertions, 0 deletions
diff --git a/net/sunrpc/netns.h b/net/sunrpc/netns.h
index 74d948f5d5a..779742cfc1f 100644
--- a/net/sunrpc/netns.h
+++ b/net/sunrpc/netns.h
@@ -23,6 +23,7 @@ struct sunrpc_net {
struct rpc_clnt *rpcb_local_clnt4;
spinlock_t rpcb_clnt_lock;
unsigned int rpcb_users;
+ unsigned int rpcb_is_af_local : 1;
struct mutex gssp_lock;
wait_queue_head_t gssp_wq;