projects
/
unionfs-2.6.39.y.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
c674ae0
)
nfsd4: session needs room for following op to error out
author
J. Bruce Fields
<bfields@redhat.com>
Tue, 28 Jan 2014 21:01:04 +0000
(16:01 -0500)
committer
Ben Hutchings
<ben@decadent.org.uk>
Wed, 30 Apr 2014 15:23:23 +0000
(16:23 +0100)
commit
4c69d5855a16f7378648c5733632628fa10431db
upstream.
Signed-off-by: J. Bruce Fields <bfields@redhat.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
fs/nfsd/nfs4proc.c
patch
|
blob
|
history
diff --git
a/fs/nfsd/nfs4proc.c
b/fs/nfsd/nfs4proc.c
index e065497c45aec881ecda2b42d07ae1a40fde19d0..5a6f27a3def4df1b23a8966209f38c1e75f5c7cb 100644
(file)
--- a/
fs/nfsd/nfs4proc.c
+++ b/
fs/nfsd/nfs4proc.c
@@
-1224,6
+1224,12
@@
nfsd4_proc_compound(struct svc_rqst *rqstp,
/* If op is non-idempotent */
if (opdesc->op_flags & OP_MODIFIES_SOMETHING) {
plen = opdesc->op_rsize_bop(rqstp, op);
+ /*
+ * If there's still another operation, make sure
+ * we'll have space to at least encode an error:
+ */
+ if (resp->opcnt < args->opcnt)
+ plen += COMPOUND_ERR_SLACK_SPACE;
op->status = nfsd4_check_resp_size(resp, plen);
}