NFSD: Clean up nfs4svc_encode_compoundres()
authorChuck Lever <chuck.lever@oracle.com>
Mon, 12 Sep 2022 21:23:19 +0000 (17:23 -0400)
committerChuck Lever <chuck.lever@oracle.com>
Mon, 26 Sep 2022 18:02:48 +0000 (14:02 -0400)
In today's Linux NFS server implementation, the NFS dispatcher
initializes each XDR result stream, and the NFSv4 .pc_func and
.pc_encode methods all use xdr_stream-based encoding. This keeps
rq_res.len automatically updated. There is no longer a need for
the WARN_ON_ONCE() check in nfs4svc_encode_compoundres().

Reviewed-by: Jeff Layton <jlayton@kernel.org>
Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
fs/nfsd/nfs4xdr.c

index 05dddecbaed66c99825064c7fc0af57f83e4c8d9..bcfeb1a922c0d334989ac2cf312d1567ad73adc7 100644 (file)
@@ -5459,12 +5459,8 @@ bool
 nfs4svc_encode_compoundres(struct svc_rqst *rqstp, struct xdr_stream *xdr)
 {
        struct nfsd4_compoundres *resp = rqstp->rq_resp;
-       struct xdr_buf *buf = xdr->buf;
        __be32 *p;
 
-       WARN_ON_ONCE(buf->len != buf->head[0].iov_len + buf->page_len +
-                                buf->tail[0].iov_len);
-
        /*
         * Send buffer space for the following items is reserved
         * at the top of nfsd4_proc_compound().