diff options
Diffstat (limited to 'include/linux/nfs_xdr.h')
| -rw-r--r-- | include/linux/nfs_xdr.h | 34 | 
1 files changed, 12 insertions, 22 deletions
diff --git a/include/linux/nfs_xdr.h b/include/linux/nfs_xdr.h index 9a1396e70310..0040629894df 100644 --- a/include/linux/nfs_xdr.h +++ b/include/linux/nfs_xdr.h @@ -993,6 +993,7 @@ struct nfs4_setclientid {  	unsigned int			sc_uaddr_len;  	char				sc_uaddr[RPCBIND_MAXUADDRLEN + 1];  	u32				sc_cb_ident; +	struct rpc_cred			*sc_cred;  };  struct nfs4_setclientid_res { @@ -1253,18 +1254,12 @@ enum {  	NFS_IOHDR_ERROR = 0,  	NFS_IOHDR_EOF,  	NFS_IOHDR_REDO, -	NFS_IOHDR_NEED_COMMIT, -	NFS_IOHDR_NEED_RESCHED,  }; -struct nfs_pgio_data; -  struct nfs_pgio_header {  	struct inode		*inode;  	struct rpc_cred		*cred;  	struct list_head	pages; -	struct nfs_pgio_data	*data; -	atomic_t		refcnt;  	struct nfs_page		*req;  	struct nfs_writeverf	verf;		/* Used for writes */  	struct pnfs_layout_segment *lseg; @@ -1281,28 +1276,22 @@ struct nfs_pgio_header {  	int			error;		/* merge with pnfs_error */  	unsigned long		good_bytes;	/* boundary of good data */  	unsigned long		flags; -}; -struct nfs_pgio_data { -	struct nfs_pgio_header	*header; +	/* +	 * rpc data +	 */  	struct rpc_task		task;  	struct nfs_fattr	fattr; -	struct nfs_writeverf	verf;		/* Used for writes */  	struct nfs_pgio_args	args;		/* argument struct */  	struct nfs_pgio_res	res;		/* result struct */  	unsigned long		timestamp;	/* For lease renewal */ -	int (*pgio_done_cb) (struct rpc_task *task, struct nfs_pgio_data *data); +	int (*pgio_done_cb)(struct rpc_task *, struct nfs_pgio_header *);  	__u64			mds_offset;	/* Filelayout dense stripe */ -	struct nfs_page_array	pages; +	struct nfs_page_array	page_array;  	struct nfs_client	*ds_clp;	/* pNFS data server */  	int			ds_idx;		/* ds index if ds_clp is set */  }; -struct nfs_rw_header { -	struct nfs_pgio_header	header; -	struct nfs_pgio_data	rpc_data; -}; -  struct nfs_mds_commit_info {  	atomic_t rpcs_out;  	unsigned long		ncommit; @@ -1432,11 +1421,12 @@ struct nfs_rpc_ops {  			     struct nfs_pathconf *);  	int	(*set_capabilities)(struct nfs_server *, struct nfs_fh *);  	int	(*decode_dirent)(struct xdr_stream *, struct nfs_entry *, int); -	int	(*pgio_rpc_prepare)(struct rpc_task *, struct nfs_pgio_data *); -	void	(*read_setup)   (struct nfs_pgio_data *, struct rpc_message *); -	int	(*read_done)  (struct rpc_task *, struct nfs_pgio_data *); -	void	(*write_setup)  (struct nfs_pgio_data *, struct rpc_message *); -	int	(*write_done)  (struct rpc_task *, struct nfs_pgio_data *); +	int	(*pgio_rpc_prepare)(struct rpc_task *, +				    struct nfs_pgio_header *); +	void	(*read_setup)(struct nfs_pgio_header *, struct rpc_message *); +	int	(*read_done)(struct rpc_task *, struct nfs_pgio_header *); +	void	(*write_setup)(struct nfs_pgio_header *, struct rpc_message *); +	int	(*write_done)(struct rpc_task *, struct nfs_pgio_header *);  	void	(*commit_setup) (struct nfs_commit_data *, struct rpc_message *);  	void	(*commit_rpc_prepare)(struct rpc_task *, struct nfs_commit_data *);  	int	(*commit_done) (struct rpc_task *, struct nfs_commit_data *);  |