nfsd4: use session limits to release send buffer reservation
authorJ. Bruce Fields <bfields@redhat.com>
Fri, 21 Mar 2014 00:47:41 +0000 (20:47 -0400)
committerJ. Bruce Fields <bfields@redhat.com>
Fri, 30 May 2014 21:32:02 +0000 (17:32 -0400)
Once we know the limits the session places on the size of the rpc, we
can also use that information to release any unnecessary reserved reply
buffer space.

Signed-off-by: J. Bruce Fields <bfields@redhat.com>
fs/nfsd/nfs4state.c

index 612b85ac414bf63bf5838ac9be6881dcd25570bf..62b882dc48ec2e011610e3163d5cc91c94130c73 100644 (file)
@@ -2290,6 +2290,7 @@ nfsd4_sequence(struct svc_rqst *rqstp,
                                    nfserr_rep_too_big;
        if (xdr_restrict_buflen(xdr, buflen - 2 * RPC_MAX_AUTH_SIZE))
                goto out_put_session;
+       svc_reserve(rqstp, buflen);
 
        status = nfs_ok;
        /* Success! bump slot seqid */