diff options
author | Chuck Lever <chuck.lever@oracle.com> | 2010-02-24 16:48:06 -0500 |
---|---|---|
committer | J. Bruce Fields <bfields@citi.umich.edu> | 2010-02-24 20:50:28 -0500 |
commit | 58255a4e3ce506b43bb14d5579006731a981490d (patch) | |
tree | 3b7cbbea0fc728b1a5c66b553a92f57440997ddb /fs/nfsd/nfs4callback.c | |
parent | 978ebd97d1426d5708d3f353179ab81f191a7eeb (diff) |
NFSD: NFSv4 callback client should use RPC_TASK_SOFTCONN
The server's callback client should stop trying to connect to the
client's callback server as soon as it gets ECONNREFUSED.
The NFS server's callback client does not call rpc_ping(), but appears
to have it's own "ping" procedure, so it wasn't covered by commit
caabea8a.
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Signed-off-by: J. Bruce Fields <bfields@citi.umich.edu>
Diffstat (limited to 'fs/nfsd/nfs4callback.c')
-rw-r--r-- | fs/nfsd/nfs4callback.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/nfsd/nfs4callback.c b/fs/nfsd/nfs4callback.c index c6eed2a3b093..8fa412ce8021 100644 --- a/fs/nfsd/nfs4callback.c +++ b/fs/nfsd/nfs4callback.c | |||
@@ -542,7 +542,8 @@ void do_probe_callback(struct nfs4_client *clp) | |||
542 | }; | 542 | }; |
543 | int status; | 543 | int status; |
544 | 544 | ||
545 | status = rpc_call_async(cb->cb_client, &msg, RPC_TASK_SOFT, | 545 | status = rpc_call_async(cb->cb_client, &msg, |
546 | RPC_TASK_SOFT | RPC_TASK_SOFTCONN, | ||
546 | &nfsd4_cb_probe_ops, (void *)clp); | 547 | &nfsd4_cb_probe_ops, (void *)clp); |
547 | if (status) { | 548 | if (status) { |
548 | warn_no_callback_path(clp, status); | 549 | warn_no_callback_path(clp, status); |