Skip to content

Commit

Permalink
SUNRPC: create rpcbind client in passed network namespace context
Browse files Browse the repository at this point in the history
Rpcbind clients are per network namespace.

Signed-off-by: Stanislav Kinsbursky <skinsbursky@parallels.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
  • Loading branch information
Stanislav Kinsbursky authored and Trond Myklebust committed Feb 1, 2012
1 parent 1a114a6 commit c2550e0
Showing 1 changed file with 6 additions and 5 deletions.
11 changes: 6 additions & 5 deletions net/sunrpc/rpcb_clnt.c
Original file line number Diff line number Diff line change
Expand Up @@ -344,11 +344,12 @@ int rpcb_create_local(void)
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,
Expand Down Expand Up @@ -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",
Expand Down

0 comments on commit c2550e0

Please sign in to comment.