Merge branch 'topic/tasklet-convert' into for-linus
[linux-block.git] / include / linux / nfs_xdr.h
index 5fd0a9ef425fa2fbb6e3a2a2c3e2ca40a0b1ca08..9408f3252c8eec1458ba2404262284e274bc02fb 100644 (file)
@@ -150,6 +150,7 @@ struct nfs_fsinfo {
        __u32                   layouttype[NFS_MAX_LAYOUT_TYPES]; /* supported pnfs layout driver */
        __u32                   blksize; /* preferred pnfs io block size */
        __u32                   clone_blksize; /* granularity of a CLONE operation */
+       __u32                   xattr_support; /* User xattrs supported */
 };
 
 struct nfs_fsstat {
@@ -1497,7 +1498,64 @@ struct nfs42_seek_res {
        u32     sr_eof;
        u64     sr_offset;
 };
-#endif
+
+struct nfs42_setxattrargs {
+       struct nfs4_sequence_args       seq_args;
+       struct nfs_fh                   *fh;
+       const char                      *xattr_name;
+       u32                             xattr_flags;
+       size_t                          xattr_len;
+       struct page                     **xattr_pages;
+};
+
+struct nfs42_setxattrres {
+       struct nfs4_sequence_res        seq_res;
+       struct nfs4_change_info         cinfo;
+};
+
+struct nfs42_getxattrargs {
+       struct nfs4_sequence_args       seq_args;
+       struct nfs_fh                   *fh;
+       const char                      *xattr_name;
+       size_t                          xattr_len;
+       struct page                     **xattr_pages;
+};
+
+struct nfs42_getxattrres {
+       struct nfs4_sequence_res        seq_res;
+       size_t                          xattr_len;
+};
+
+struct nfs42_listxattrsargs {
+       struct nfs4_sequence_args       seq_args;
+       struct nfs_fh                   *fh;
+       u32                             count;
+       u64                             cookie;
+       struct page                     **xattr_pages;
+};
+
+struct nfs42_listxattrsres {
+       struct nfs4_sequence_res        seq_res;
+       struct page                     *scratch;
+       void                            *xattr_buf;
+       size_t                          xattr_len;
+       u64                             cookie;
+       bool                            eof;
+       size_t                          copied;
+};
+
+struct nfs42_removexattrargs {
+       struct nfs4_sequence_args       seq_args;
+       struct nfs_fh                   *fh;
+       const char                      *xattr_name;
+};
+
+struct nfs42_removexattrres {
+       struct nfs4_sequence_res        seq_res;
+       struct nfs4_change_info         cinfo;
+};
+
+#endif /* CONFIG_NFS_V4_2 */
 
 struct nfs_page;