Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 42529
b: refs/heads/master
c: 2b577f1
h: refs/heads/master
i:
  42527: ce11723
v: v3
  • Loading branch information
Chuck Lever authored and Trond Myklebust committed Dec 6, 2006
1 parent 9856a5a commit 69a3594
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 6 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: a18030445fd4dd20e2248007b5d1cf0b5d89c69d
refs/heads/master: 2b577f1f14c8d83ba9400ec8accaf4a208f4f36a
11 changes: 6 additions & 5 deletions trunk/net/sunrpc/pmap_clnt.c
Original file line number Diff line number Diff line change
Expand Up @@ -101,14 +101,14 @@ void rpc_getport(struct rpc_task *task)
/* Autobind on cloned rpc clients is discouraged */
BUG_ON(clnt->cl_parent != clnt);

status = -EACCES; /* tell caller to check again */
if (xprt_test_and_set_binding(xprt))
goto bailout_nowake;

/* Put self on queue before sending rpcbind request, in case
* pmap_getport_done completes before we return from rpc_run_task */
rpc_sleep_on(&xprt->binding, task, NULL, NULL);

status = -EACCES; /* tell caller to check again */
if (xprt_test_and_set_binding(xprt))
goto bailout_nofree;

/* Someone else may have bound if we slept */
status = 0;
if (xprt_bound(xprt))
Expand Down Expand Up @@ -143,8 +143,9 @@ void rpc_getport(struct rpc_task *task)
pmap_map_free(map);
xprt_put(xprt);
bailout_nofree:
task->tk_status = status;
pmap_wake_portmap_waiters(xprt, status);
bailout_nowake:
task->tk_status = status;
}

#ifdef CONFIG_ROOT_NFS
Expand Down

0 comments on commit 69a3594

Please sign in to comment.