aboutsummaryrefslogtreecommitdiffstats
path: root/fs/nfsd
diff options
context:
space:
mode:
authorTrond Myklebust <Trond.Myklebust@netapp.com>2007-06-14 17:31:58 -0400
committerTrond Myklebust <Trond.Myklebust@netapp.com>2007-07-10 23:40:30 -0400
commitf61534dfd38f895b203e2aadaba04f21a992ca8c (patch)
tree02485ae68fb2f45cbbc06152e0a4856ceff5f587 /fs/nfsd
parent4ada539ed77c7a2bbcb75cafbbd7bd8d2b9bef7b (diff)
SUNRPC: Remove redundant calls to rpciod_up()/rpciod_down()
Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
Diffstat (limited to 'fs/nfsd')
-rw-r--r--fs/nfsd/nfs4callback.c12
-rw-r--r--fs/nfsd/nfs4state.c1
2 files changed, 3 insertions, 10 deletions
diff --git a/fs/nfsd/nfs4callback.c b/fs/nfsd/nfs4callback.c
index 864090edc28b..6b1b487db1ec 100644
--- a/fs/nfsd/nfs4callback.c
+++ b/fs/nfsd/nfs4callback.c
@@ -429,29 +429,23 @@ nfsd4_probe_callback(struct nfs4_client *clp)
429 goto out_err; 429 goto out_err;
430 } 430 }
431 431
432 /* Kick rpciod, put the call on the wire. */
433 if (rpciod_up() != 0)
434 goto out_clnt;
435
436 /* the task holds a reference to the nfs4_client struct */ 432 /* the task holds a reference to the nfs4_client struct */
437 atomic_inc(&clp->cl_count); 433 atomic_inc(&clp->cl_count);
438 434
439 msg.rpc_cred = nfsd4_lookupcred(clp,0); 435 msg.rpc_cred = nfsd4_lookupcred(clp,0);
440 if (IS_ERR(msg.rpc_cred)) 436 if (IS_ERR(msg.rpc_cred))
441 goto out_rpciod; 437 goto out_release_clp;
442 status = rpc_call_async(cb->cb_client, &msg, RPC_TASK_ASYNC, &nfs4_cb_null_ops, NULL); 438 status = rpc_call_async(cb->cb_client, &msg, RPC_TASK_ASYNC, &nfs4_cb_null_ops, NULL);
443 put_rpccred(msg.rpc_cred); 439 put_rpccred(msg.rpc_cred);
444 440
445 if (status != 0) { 441 if (status != 0) {
446 dprintk("NFSD: asynchronous NFSPROC4_CB_NULL failed!\n"); 442 dprintk("NFSD: asynchronous NFSPROC4_CB_NULL failed!\n");
447 goto out_rpciod; 443 goto out_release_clp;
448 } 444 }
449 return; 445 return;
450 446
451out_rpciod: 447out_release_clp:
452 atomic_dec(&clp->cl_count); 448 atomic_dec(&clp->cl_count);
453 rpciod_down();
454out_clnt:
455 rpc_shutdown_client(cb->cb_client); 449 rpc_shutdown_client(cb->cb_client);
456out_err: 450out_err:
457 cb->cb_client = NULL; 451 cb->cb_client = NULL;
diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
index 3cc8ce422ab1..8c52913d7cb6 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
@@ -378,7 +378,6 @@ shutdown_callback_client(struct nfs4_client *clp)
378 if (clnt) { 378 if (clnt) {
379 clp->cl_callback.cb_client = NULL; 379 clp->cl_callback.cb_client = NULL;
380 rpc_shutdown_client(clnt); 380 rpc_shutdown_client(clnt);
381 rpciod_down();
382 } 381 }
383} 382}
384 383