nfsd4: minor encode_read cleanup

Signed-off-by: J. Bruce Fields <bfields@redhat.com>
This commit is contained in:
J. Bruce Fields 2014-03-11 16:51:23 -04:00
parent 4f0cefbf38
commit 6ff9897d2b
1 changed files with 6 additions and 4 deletions

View File

@ -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;