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

Commit c2550e07 authored by Stanislav Kinsbursky's avatar Stanislav Kinsbursky Committed by Trond Myklebust
Browse files

SUNRPC: create rpcbind client in passed network namespace context



Rpcbind clients are per network namespace.

Signed-off-by: default avatarStanislav Kinsbursky <skinsbursky@parallels.com>
Signed-off-by: default avatarTrond Myklebust <Trond.Myklebust@netapp.com>
parent 1a114a66
Loading
Loading
Loading
Loading
+6 −5
Original line number Diff line number Diff line
@@ -344,11 +344,12 @@ out:
	return result;
}

static struct rpc_clnt *rpcb_create(char *hostname, struct sockaddr *srvaddr,
				    size_t salen, int proto, u32 version)
static struct rpc_clnt *rpcb_create(struct net *net, char *hostname,
				    struct sockaddr *srvaddr, size_t salen,
				    int proto, u32 version)
{
	struct rpc_create_args args = {
		.net		= &init_net,
		.net		= net,
		.protocol	= proto,
		.address	= srvaddr,
		.addrsize	= salen,
@@ -708,8 +709,8 @@ void rpcb_getport_async(struct rpc_task *task)
	dprintk("RPC: %5u %s: trying rpcbind version %u\n",
		task->tk_pid, __func__, bind_version);

	rpcb_clnt = rpcb_create(clnt->cl_server, sap, salen, xprt->prot,
				bind_version);
	rpcb_clnt = rpcb_create(xprt->xprt_net, clnt->cl_server, sap, salen,
				xprt->prot, bind_version);
	if (IS_ERR(rpcb_clnt)) {
		status = PTR_ERR(rpcb_clnt);
		dprintk("RPC: %5u %s: rpcb_create failed, error %ld\n",