summaryrefslogtreecommitdiffstats
path: root/fs/nfsd
diff options
context:
space:
mode:
authorJ. Bruce Fields2013-07-26 22:57:20 +0200
committerJ. Bruce Fields2013-07-26 23:02:07 +0200
commitb1948a641daefe8d128749f3d419ed24d529a8ed (patch)
treebdb2e223e372ebc4d3436b6ecd3860476213de9c /fs/nfsd
parentnfsd: nfs4_file_get_access: need to be more careful with O_RDWR (diff)
downloadkernel-qcow2-linux-b1948a641daefe8d128749f3d419ed24d529a8ed.tar.gz
kernel-qcow2-linux-b1948a641daefe8d128749f3d419ed24d529a8ed.tar.xz
kernel-qcow2-linux-b1948a641daefe8d128749f3d419ed24d529a8ed.zip
nfsd4: fix setlease error return
This actually makes a difference in the 4.1 case, since we use the status to decide what reason to give the client for the delegation refusal (see nfsd4_open_deleg_none_ext), and in theory a client might choose suboptimal behavior if we give the wrong answer. Reported-by: Jeff Layton <jlayton@redhat.com> Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Diffstat (limited to 'fs/nfsd')
-rw-r--r--fs/nfsd/nfs4state.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
index 1cb621131b00..1852f5351b22 100644
--- a/fs/nfsd/nfs4state.c
+++ b/fs/nfsd/nfs4state.c
@@ -3028,7 +3028,7 @@ static int nfs4_setlease(struct nfs4_delegation *dp)
if (status) {
list_del_init(&dp->dl_perclnt);
locks_free_lock(fl);
- return -ENOMEM;
+ return status;
}
fp->fi_lease = fl;
fp->fi_deleg_file = get_file(fl->fl_file);