diff options
| author | Neil Brown <neilb@cse.unsw.edu.au> | 2002-11-21 19:20:11 -0800 |
|---|---|---|
| committer | Linus Torvalds <torvalds@penguin.transmeta.com> | 2002-11-21 19:20:11 -0800 |
| commit | dcffe12eacd46017d834cab1be62de65348b091e (patch) | |
| tree | 0ff5cfae4c99479410340d532f9fd962de3e3c00 /include/linux | |
| parent | 89fc0a31eb36a683d331be8f59bef740141fb2af (diff) | |
[PATCH] kNFSd - 2 of 2 - Change NFSv4 reply encoding to cope with multiple pages.
This allows NFSv4 responses to cover move than one page. There are
still limits though. There can be at most one 'data' response which
includes READ, READLINK, READDIR. For these responses, the interesting
data goes in a separate page or, for READ, list of pages.
All responses before the 'data' response must fit in one page, and all
responses after it must also fit in one (separate) page.
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/nfsd/xdr4.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/linux/nfsd/xdr4.h b/include/linux/nfsd/xdr4.h index 72b7c03dfc1a..8359679908ab 100644 --- a/include/linux/nfsd/xdr4.h +++ b/include/linux/nfsd/xdr4.h @@ -173,6 +173,9 @@ struct nfsd4_read { stateid_t rd_stateid; /* request */ u64 rd_offset; /* request */ u32 rd_length; /* request */ + struct iovec rd_iov[RPCSVC_MAXPAGES]; + int rd_vlen; + struct svc_rqst *rd_rqstp; /* response */ struct svc_fh * rd_fhp; /* response */ }; @@ -311,6 +314,8 @@ struct nfsd4_compoundres { /* scratch variables for XDR encode */ u32 * p; u32 * end; + struct xdr_buf * xbuf; + struct svc_rqst * rqstp; u32 taglen; char * tag; |
