Commit 6ff9897d authored by J. Bruce Fields's avatar J. Bruce Fields

nfsd4: minor encode_read cleanup

Signed-off-by: default avatarJ. Bruce Fields <bfields@redhat.com>
parent 4f0cefbf
...@@ -3076,18 +3076,20 @@ nfsd4_encode_read(struct nfsd4_compoundres *resp, __be32 nfserr, ...@@ -3076,18 +3076,20 @@ nfsd4_encode_read(struct nfsd4_compoundres *resp, __be32 nfserr,
len = maxcount; len = maxcount;
v = 0; v = 0;
while (len > 0) { while (len) {
int thislen;
page = *(resp->rqstp->rq_next_page); page = *(resp->rqstp->rq_next_page);
if (!page) { /* ran out of pages */ if (!page) { /* ran out of pages */
maxcount -= len; maxcount -= len;
break; break;
} }
thislen = min_t(long, len, PAGE_SIZE);
resp->rqstp->rq_vec[v].iov_base = page_address(page); resp->rqstp->rq_vec[v].iov_base = page_address(page);
resp->rqstp->rq_vec[v].iov_len = resp->rqstp->rq_vec[v].iov_len = thislen;
len < PAGE_SIZE ? len : PAGE_SIZE;
resp->rqstp->rq_next_page++; resp->rqstp->rq_next_page++;
v++; v++;
len -= PAGE_SIZE; len -= thislen;
} }
read->rd_vlen = v; read->rd_vlen = v;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment