summaryrefslogtreecommitdiffstats
path: root/include/linux/nfs_xdr.h
diff options
context:
space:
mode:
authorAnna Schumaker2014-09-26 19:58:48 +0200
committerTrond Myklebust2014-09-30 22:24:56 +0200
commit1c6dcbe5ceff81c2cf8d929646af675cd59fe7c0 (patch)
tree1e432e1decca1b3a6de427db31db5737d997a7f5 /include/linux/nfs_xdr.h
parentMerge commit '24bab491220f' into client-4.2 (diff)
downloadkernel-qcow2-linux-1c6dcbe5ceff81c2cf8d929646af675cd59fe7c0.tar.gz
kernel-qcow2-linux-1c6dcbe5ceff81c2cf8d929646af675cd59fe7c0.tar.xz
kernel-qcow2-linux-1c6dcbe5ceff81c2cf8d929646af675cd59fe7c0.zip
NFS: Implement SEEK
The SEEK operation is used when an application makes an lseek call with either the SEEK_HOLE or SEEK_DATA flags set. I fall back on nfs_file_llseek() if the server does not have SEEK support. Signed-off-by: Anna Schumaker <Anna.Schumaker@Netapp.com> Signed-off-by: Trond Myklebust <trond.myklebust@primarydata.com>
Diffstat (limited to 'include/linux/nfs_xdr.h')
-rw-r--r--include/linux/nfs_xdr.h19
1 files changed, 19 insertions, 0 deletions
diff --git a/include/linux/nfs_xdr.h b/include/linux/nfs_xdr.h
index 0040629894df..0051b1ad2b37 100644
--- a/include/linux/nfs_xdr.h
+++ b/include/linux/nfs_xdr.h
@@ -1239,6 +1239,25 @@ struct pnfs_ds_commit_info {
#endif /* CONFIG_NFS_V4_1 */
+#ifdef CONFIG_NFS_V4_2
+struct nfs42_seek_args {
+ struct nfs4_sequence_args seq_args;
+
+ struct nfs_fh *sa_fh;
+ nfs4_stateid sa_stateid;
+ u64 sa_offset;
+ u32 sa_what;
+};
+
+struct nfs42_seek_res {
+ struct nfs4_sequence_res seq_res;
+ unsigned int status;
+
+ u32 sr_eof;
+ u64 sr_offset;
+};
+#endif
+
struct nfs_page;
#define NFS_PAGEVEC_SIZE (8U)