summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan Carpenter <error27@gmail.com>2010-04-22 11:28:39 +0200
committerTrond Myklebust <Trond.Myklebust@netapp.com>2010-04-28 13:45:12 -0400
commitacf82b85a70f39786e3cbb1ffed8655bcc972424 (patch)
tree99e1a7b0815aa1ca1d9196a323c9c28df185d2aa
parentba8b06e67ed7a560b0e7c80091bcadda4f4727a5 (diff)
downloadlinux-acf82b85a70f39786e3cbb1ffed8655bcc972424.tar.gz
linux-acf82b85a70f39786e3cbb1ffed8655bcc972424.tar.bz2
linux-acf82b85a70f39786e3cbb1ffed8655bcc972424.zip
nfs: fix some issues in nfs41_proc_reclaim_complete()
The original code passed an ERR_PTR() to rpc_put_task() and instead of returning zero on success it returned -ENOMEM. Signed-off-by: Dan Carpenter <error27@gmail.com> Signed-off-by: Trond Myklebust <Trond.Myklebust@netapp.com>
-rw-r--r--fs/nfs/nfs4proc.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c
index 638067007c65..071fcedd517c 100644
--- a/fs/nfs/nfs4proc.c
+++ b/fs/nfs/nfs4proc.c
@@ -5218,9 +5218,12 @@ static int nfs41_proc_reclaim_complete(struct nfs_client *clp)
msg.rpc_resp = &calldata->res;
task_setup_data.callback_data = calldata;
task = rpc_run_task(&task_setup_data);
- if (IS_ERR(task))
+ if (IS_ERR(task)) {
status = PTR_ERR(task);
+ goto out;
+ }
rpc_put_task(task);
+ return 0;
out:
dprintk("<-- %s status=%d\n", __func__, status);
return status;