summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorTrond Myklebust <trond.myklebust@fys.uio.no>2004-09-02 03:52:49 -0700
committerLinus Torvalds <torvalds@ppc970.osdl.org>2004-09-02 03:52:49 -0700
commitc8030e55d2cf53f4ef2349aeae345cbf222cd93b (patch)
treeec98d0652b63ae49c15d1fe631a500d318afacd4 /include/linux
parentd6ea9da0a2cfbe3144c6cc50e668d25657a783f3 (diff)
[PATCH] NFS: clean up the new symlink code
- Now that the VFS no longer uses it, we don't need to cache the symlink string length. - Make ->readlink() take page offset+length arguments - Fix up page under/overflow checking on the readlink XDR code so that it matches read/write. Signed-off-by: Trond Myklebust <trond.myklebust@fys.uio.no> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/nfs_xdr.h12
1 files changed, 8 insertions, 4 deletions
diff --git a/include/linux/nfs_xdr.h b/include/linux/nfs_xdr.h
index 90fbb9d1514f..f1402347c509 100644
--- a/include/linux/nfs_xdr.h
+++ b/include/linux/nfs_xdr.h
@@ -361,7 +361,8 @@ struct nfs_diropok {
struct nfs_readlinkargs {
struct nfs_fh * fh;
- unsigned int count;
+ unsigned int pgbase;
+ unsigned int pglen;
struct page ** pages;
};
@@ -455,7 +456,8 @@ struct nfs3_accessres {
struct nfs3_readlinkargs {
struct nfs_fh * fh;
- unsigned int count;
+ unsigned int pgbase;
+ unsigned int pglen;
struct page ** pages;
};
@@ -570,7 +572,8 @@ struct nfs4_readdir_res {
struct nfs4_readlink {
const struct nfs_fh * fh;
- u32 count; /* zero-copy data */
+ unsigned int pgbase;
+ unsigned int pglen; /* zero-copy data */
struct page ** pages; /* zero-copy data */
};
@@ -673,7 +676,8 @@ struct nfs_rpc_ops {
int (*lookup) (struct inode *, struct qstr *,
struct nfs_fh *, struct nfs_fattr *);
int (*access) (struct inode *, struct nfs_access_entry *);
- int (*readlink)(struct inode *, struct page *);
+ int (*readlink)(struct inode *, struct page *, unsigned int,
+ unsigned int);
int (*read) (struct nfs_read_data *);
int (*write) (struct nfs_write_data *);
int (*commit) (struct nfs_write_data *);