Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 00326ed6 authored by Trond Myklebust's avatar Trond Myklebust
Browse files

SUNRPC: Don't auto-disconnect from the local rpcbind socket



There is no need for the kernel to time out the AF_LOCAL connection to
the rpcbind socket, and doing so is problematic because when it is
time to reconnect, our process may no longer be using the same mount
namespace.

Reported-by: default avatarNix <nix@esperi.org.uk>
Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
Cc: Jeff Layton <jlayton@redhat.com>
Cc: stable@vger.kernel.org # 3.9.x
parent 9a1b6bf8
Loading
Loading
Loading
Loading
+8 −0
Original line number Diff line number Diff line
@@ -238,6 +238,14 @@ static int rpcb_create_local_unix(struct net *net)
		.program	= &rpcb_program,
		.version	= RPCBVERS_2,
		.authflavor	= RPC_AUTH_NULL,
		/*
		 * We turn off the idle timeout to prevent the kernel
		 * from automatically disconnecting the socket.
		 * Otherwise, we'd have to cache the mount namespace
		 * of the caller and somehow pass that to the socket
		 * reconnect code.
		 */
		.flags		= RPC_CLNT_CREATE_NO_IDLE_TIMEOUT,
	};
	struct rpc_clnt *clnt, *clnt4;
	int result = 0;